iT邦幫忙

2023 iThome 鐵人賽

DAY 27
0

遞迴(Recursion)是指在方法的定義中使用方法本身的技術。在Java中,你可以寫遞迴方法來解決一些需要重複執行某個過程的問題。遞迴通常用於解決可以被分解為相似子問題的問題,每一個子問題都可以用相同的解決方法。

在遞迴方法中,必須有一個終止條件,否則遞迴會無限地執行下去,導致堆棧溢出。終止條件確保了遞迴的終止,當滿足終止條件時,遞迴方法將不再調用自身,而是返回結果。

以下是一個用遞迴來做費波那契數

public class Demo1Application {

	public static void main(String[] args) {
		
		T t1=new T();
		System.out.println("當 n=8,斐波那契數為"+t1.fibonacci(8));
	}

}
class T {
	//
	public int fibonacci(int n){
		if(n>=1){
			if(n==1||n==2){
				return 1;
			} else {
				return fibonacci(n-1)+fibonacci(n-2);
			}
		} else {
			System.out.println("輸入n>=1的整數");
			return -1;
		}
	}
}

Result:
https://ithelp.ithome.com.tw/upload/images/20231012/201516061IRGkSh1sq.png


上一篇
Day 26 Java package
下一篇
Day 28 Java Project : Income Statement
系列文
菜鳥工程師30天學java基礎30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言