青蛙跳台階

2021-08-21 23:40:17 字數 1004 閱讀 4558

乙隻青蛙一次可以跳上1級台階,也可以跳上2級……它也可以跳上n級。求該青蛙跳上乙個n級的台階總共有多少種跳法。

每乙個台階都有兩種選擇 : 跳或者不跳

第乙個台階必須跳 , 所以只有 n - 1 個台階需要選擇

那麼就是 2^(n - 1)

class solution 

};

左移運算相當於乘方運算

1 左移 1 位 , 0000 0001 -––—> 0000 0010 = 2 相當於乘以 2

1 左移 2 位 , 0000 0001 -––—> 0000 0100 = 4 相當於乘以 2^2

1 左移 3 位 , 0000 0001 -––—> 0000 1000 = 8 相當於乘以 2^3

所以 2^(n-1) 相當於 1 左移 n-1 位

class solution 

};

因為有 n 級台階 , 每次有 n 種跳法 : 跳 1 級 , 2 級, 3 級 ..… n 級

選擇跳 1 級 , 剩下 n - 1 級 , 則剩下每次的跳法為f(n-1)

選擇跳 2 級 , 剩下 n - 2 級 , 則剩下每次的跳法為f(n-2)

選擇跳 n 級 , 剩下 n - n 級 , 則剩下每次的跳法為f(0)

所以 f(n) = f(n-1) + f(n-2) + ... + f(n-(n-1)) + f(n-n)

f(n-1) = f(n-2) + f(n-3) + ... + f(n-(n-1)) + f(n-n)

最後得到

f(n) = 2*f(n-1)

class solution 

};

青蛙跳台階

乙隻青蛙一次可以跳上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階樓梯上...

青蛙跳台階

難易程度 中等 題目描述 乙隻青蛙一次可以跳上1級台階,也可以跳上2級。在不考慮青蛙健康狀況的情況下 求該青蛙跳上乙個n級的台階總共有多少種跳法。思路 在本題的描述中,青蛙的行動只有兩種可能 一次跳乙個台階或者兩個台階,設n階台階的跳法為 f n 如果第一次跳了一階,那麼剩下的n 1階的跳法為f n...