今天爭取每天更新一篇劍指offer的算法題,算是做筆記,也算是督促自己學習,今天先做一個最簡單的斐波那契數列。
斐波那契題目大家都很熟悉了,最基本的方法是用遞歸。但是遞歸意味着要消耗大量的空間,所以這裏嘗試用循環的方式去解決。
先直接放代碼
這裏代碼的重點就是用while循環去做相當與遞歸的操作。直接拿斐波那契數列的前幾項舉例說明:
0,1,1,2,3,5
一開始,我們用num1模擬的是第三項上的1,num2模擬的是第二項上的1。在while循環中,num1的作用是成爲我們要求的斐波那契的第n項,而num2則是要成爲第n-1項。
理解了這個循環,這道題就可以解決