青蛙跳台階問題

2021-09-28 14:27:21 字數 997 閱讀 5662

問題:

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

已知:n == 1時:有1種跳法

n == 2時:有2種跳法

n == 3時:有3種跳法

n == 4時:有5種跳法

分析:

當n>2時,第一次跳的時候有兩種選擇:

如果第一次只跳一級,此時跳法數目等於後面剩下的 n-1 級台階的跳法數目,即為f(n-1);

如果第一次跳兩級,此時跳法數目等於後面剩下的 n-2 級台階的跳法數目,即為f(n-2).

總跳數為這兩種選擇的和,即為 f(n-1) + f(n-2) 種跳法. 這和斐波那契數列的求解很相似,只不過這個的第二項是2,而斐波那契數列的第二項是0.

我們用兩種遞迴和迴圈兩種方法來實現這個**:

一、遞迴

public

class

test

//遞迴

public

static

intfunc

(int n)

else

if(n ==2)

return

func

(n-1)+

func

(n-2);

}}

二、迴圈

public

class

test

public

static

intfunc2

(int n)

int f1 =1;

int f2 =2;

int f3 =3;

for(

int i =

3; i <= n; i++

)return f3;

}}

青蛙跳台階問題

題目 乙隻青蛙一次可以跳上 1 級台階,也可以跳上2 級。求該青蛙跳上乙個n 級的台階總共有多少種跳法。我的思路 最開始我的思路是把這個看成是乙個數學問題,n i 1 k 2先把所有可能滿足這個公式的i和k求出來。然後在對i和k做排列組合。很明顯i的範圍應該是0 public int jumpflo...

青蛙跳台階問題

1 乙隻青蛙一次可以跳上 1 級台階,也可以跳上2 級。求該青蛙跳上乙個n 級的台階總共有多少種跳法。2 乙隻青蛙一次可以跳上1級台階,也可以跳上2 級 它也可以跳上n 級,此時該青蛙跳上乙個n級的台階總共有多少種跳法?分析 1 當n 1,只有1中跳法 當n 2時,有兩種跳法 當n 3 時,有3種跳...

青蛙跳台階問題

問題一 有乙隻青蛙,需要跳上100級台階。青蛙每次可以調一級或者兩級台階。問青蛙有多少種方式可以跳100級台階。思路 逆推 當青蛙站在100級台階上時,那它跳上100級時有可能是從99級跳一級上來的,也可能是從98級跳兩級跳上來的 從98級跳兩個一級包括在從99級跳一級情況內,所以不予考慮 所以f ...