劍指offer 跳台階

2021-08-22 18:06:57 字數 590 閱讀 7831

題目描述

乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法(先後次序不同算不同的結果)。

解題思路

按照題意,

1 級 —- 1 種

2 級 —- 2 種

3 級 —- 3 種

4 級 —- 5 種

5 級 —- 8 種

我們可以得到一種規律,如果要跳 6 級,可以從 5 級跳一步到 6 級,5 級的方案中有多少種就有多少種跳法跳到 6 級;還可以從 4 級跳兩步到 6 級,同理,4 級的方案有多少種就有多少種方法從 4 級跳到 6 級,所以可以得到公式f(n) = f(n-1) + f(n-2),再結合 1 級和 2 級的情況,可以得以如下的規律:

f(n) = 1, (n=1)

f(n) = 2, (n=2)

f(n) = f(n-1)+f(n-2) ,(n>2,n為整數)

這就是斐波那契數列的變形,因此可以用遞迴來實現。

參考**

public

class

solution

}

劍指offer 跳台階

跳台階1 題目 乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法。思路 遞迴思想 可以理解為前面m步的情況加上最後一步的情況,前面m步理解為,m 1步加上最後一步的情況。最後一步分為2中情況,上1級和上2級。如下 class solution 跳台階2 題目 ...

劍指Offer 跳台階

乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法 解析 當青蛙到到n級時,有兩種跳法,一種是從n 1級跳1級,還有種是n 2跳2級 f n f n 1 f n 2 大家對這個公式是不是很熟悉,對,是斐波那契數列。所以這是一道動態規劃的問題。斐波那契數列,只能上...

劍指Offer 跳台階

author tom qian email tomqianmaple outlook.com github date 2017年8月10日 乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法。思路 首先窮舉一下到達最後一級台階的情況,分析最後到達是一步還是兩步。...