【題目描述】乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法。
【解題思路】
//1.對於第n個台階來說,只能從n-1或者n-2的台階跳上來,所以f(n) = f(n-1) + f(n-2)
//2.斐波拉契數序列,初始條件
n=1:只能一種方法
n=2:兩種
遞迴一下就好了
//3. 當測試用例比較大時,遞迴可能會產生超時。
//4. 預設n>0
public
class solution
return jumpfloor(target-1)+jumpfloor(target-2);
}
}
【其他】
其他的解法,如遞迴、動態規劃等,可以轉化為斐波那契序列,見另一篇博文
青蛙跳台階演算法 java版
在樓梯台階為n階情況下,每次可跳1次或者2次,結果返回為到達n階樓梯的跳法 假設在第i層台階之前,可以通過i 1處跳1階台階到達第i層,也可通過i 2處跳2階到達第i層.同理如果允許一次跳三層台階則 可在i 3 處跳 3 階到達 第 i 層台階。即 到達第i層台階的方式由i 1 i 2的方式構成 具...
跳台階java實現
題目 乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法。思路 對於本題,前提只有 一次 1階或者2階的跳法。a.如果兩種跳法,1階或者2階,那麼假定第一次跳的是一階,那麼剩下的是n 1個台階,跳法是f n 1 b.假定第一次跳的是2階,那麼剩下的是n 2個台階...
青蛙跳台階(java)
一 問題描述 乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法。二 演算法分析 因為青蛙一次只能跳上1級台階或者兩級台階,所以對於第n級台階來說,青蛙只能從第n 1級台階或者第n 2級台階跳上。設青蛙跳上第n級台階有f n 種跳法,則 f n f n 1 f ...