用遞歸實現求n!階層和菲波那切數列

遞歸算法

1.求n!階層和

我們都知道n!是指n+(n-1)+(n-2)+…+1,用java來實現這個遞歸

public class Factorial {
	public static int factorial(int n) {
		if(n==1) { //n爲1,返回結果爲1
			return 1;
		}else {  //n大於等於1,調用遞歸算法
			return factorial(n-1)+n;
		}
	}
	//主方法,調用上述定義的方法進行計算;
	public static void main(String[] args) {
		Factorial f=new Factorial();
		int result=f.factorial(5);
		System.out.println("階層和是:"+result);
		
	}
}

2.斐波那契數列

1,1,2,3,5,8,13,…

public class Fibonacci {
    //定義求解方法;
	public static int fibonacci(int n) { 
		if(n==0 || n==1) {
			return 1;
		}else {
			return fibonacci(n-1)+fibonacci(n-2);
		}
	}
	//主方法,調用上面的Fibonacci方法進行計算;
	public static void main(String[] args) {
		Fibonacci f=new Fibonacci();
		int result=f.fibonacci(5);
		System.out.println(result);
	}
}

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章