1. 程式人生 > >Java面向物件——遞迴

Java面向物件——遞迴

求一個案例:分別用遞迴方法和非遞迴方法求n*(n-1)*(n-2)...3*2*1;

非遞迴方式:用迴圈求解

package Hello;

public class Test {

	static int NotDiGui(int n){
		int result=1;
		for(int i=1;i<=n;i++){
			result=result*i;
		}
		return result;
	}
	public static void main(String[] args) {
		System.out.println(Test.NotDiGui(6));
	}
}

輸出結果是:720,即6!;

遞迴方式:

package Hello;

public class Test {

	static int DiGui(int n){
		if(n==1){
			return 1;
		}
		return DiGui(n-1)*n;
	}
	public static void main(String[] args) {
		System.out.println(Test.DiGui(6));
	}
}

 輸出結果也是:720,即6!;