演算法題 青蛙跳台階問題

2021-08-06 05:10:40 字數 1063 閱讀 5769

f

(n) = f

(n-1)= 1 n=1

f(n) = 1+1 = 2 n=2 當第一次跳乙個台階時,有一種方法,當第一次跳兩個台階時有一種方法

f(n) = 2+1 =3 n=3 當第一次跳乙個台階時有f

(3-1)中方法,當第一次跳兩個台階時有f

(3-2)中方法

因此,f

(n) = f

(n-1)+f

(n-2)

n>2

f

(n) =f

(n-1)= 1 n=1

f(n) = 1+1 = 2 n=2 當第一次跳乙個台階時,有一種方法,當第一次跳兩個台階時有一種方法

f(n) = 2+1 =3 n=3 當第一次跳乙個台階時有f

(3-1)種方法,當第一次跳兩個台階時有f

(3-2)種方法,當第一次跳3個台階時有1種跳法因此f

(n) = f

(n-1)+f

(n-2)+......f

(1)+1種跳法

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

f(n)-f(n-1)=f(n-1)

所以f(n) = 2*f(n-1) n>2

#coding:utf-8

defjump1

(n):

if n==1:

return

1elif n==2:

return

2else:

return jump1(n-1)+jump1(n-2)

defjump2

(n):

if n==1:

return

1elif n==2:

return

2else:

return

2*jump1(n-1)

print(jump1(5))

print(jump2(5))

演算法 青蛙跳台階

1.乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法。典型的斐波那契數列 2.青蛙跳台階plus版本 乙隻青蛙一次可以跳上1級台階,也可以跳上2級 它也可以跳上n級。求該青蛙跳上乙個n級的台階總共有多少種跳法。關於本題,前提是n個台階會有一次n階的跳法。分析如...

青蛙跳台階問題

題目 乙隻青蛙一次可以跳上 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種跳...