問題:乙隻青蛙一次可以跳上1級台階,也可以跳上2級……它也可以跳上n級。求該青蛙跳上乙個n級的台階總共有多少種跳法
思路:結合前面的那個青蛙跳台階一次跳1階或者2階,拓展到這個題當中。可以自然而然的想到,青蛙可以是從n-n,n-n+1,n-n+2,...n-1上面跳上來,
但是別忘了最後,加上最0階跳上來的那一種可能。
部分**:
public int jumpfloorii(int target) if(target == 1)if(target == 2)
int num = 0;
for(int i = 0;i
說明:第一次提交的時候沒有寫最後那個return的加1,發現測試用例的結果和我的**輸出的結果相差1,於是腦子就多轉了個彎,就想到從第0層也可以跳上來,但明顯當target = 0的時候,它的值就應該是0,就發現問題就是在這兒,所以給返回值又加1,結果正確。
劍指offer 青蛙跳台階I 青蛙跳台階 II
i 題目 乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法 先後次序不同算不同的結果 斐波那契數列變體,關鍵是找出遞推公式。假設跳n級台階有f n 中跳法,容易發現f 1 1,f 2 2 n 2時,如果最後一次跳一級台階,一共有f n 1 種跳法,如果最後一次...
青蛙跳台階
乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法。解題思路 1 如果兩種跳法,1階或者2階,那麼假定第一次跳的是一階,那麼剩下的是n 1個台階,跳法是f n 1 2 假定第一次跳的是2階,那麼剩下的是n 2個台階,跳法是f n 2 3 總跳法為 f n f n...
青蛙跳台階
之前面試遇到了這種題目,不會,後來搜尋了一下,感覺分析的很好 青蛙跳乙個n階的台階,每次可以跳1階或者2階,求跳完n階y有多少種方法。分析 n 1,f n 1 n 2,f n 2 n 3,f n 3 n 4,f n 5 可以發現 f n f n 1 f n 2 由此也可以推想 比如要跳到第4階樓梯上...