爬樓梯問題

2021-10-09 08:43:32 字數 708 閱讀 1609

假設你正在爬樓梯。需要 n 階你才能到達樓頂。

每次你可以爬 1 或 2 個台階。你有多少種不同的方法可以爬到樓頂呢?

注意:給定 n 是乙個正整數。

示例:

輸入: 2

輸出: 2

解釋: 有兩種方法可以爬到樓頂。

1.1 階 +

1 階2.

2 階

狀態定義:dp[n]爬到第n階樓梯的方法

狀態轉移方程:dp[n]=dp[n-1]+dp[n-2];

base case:dp[1]=1,dp[2]=2;

**:

class solution

return dp[n];}

}

複雜度:

時間複雜度:o(n)

空間複雜度:o(n)

空間優化:

class solution

return cur;

}}

空間複雜度:o(1)

如果觀察數學規律,可知本題是斐波那契數列,那麼用斐波那契數列的公式即可解決問題,公式如下:

爬樓梯問題

ok,前段時間在一篇blog上看到乙個關於樓梯的面試題,大概內容如下 現有乙個人,規定他上樓梯時只能一步走乙個台階或者兩個台階。要求 給定任意樓梯的階數,求共有多少種方法爬完樓梯。如果有經驗可以看出,這是一道遞迴的題目。不過這個遞迴 程式怎麼寫呢?我的思路是可以這樣想,不管他前面 怎麼爬,最後總是要...

爬樓梯問題

爬樓梯問題,每次可以走1步或者2步,爬上n層樓梯的總方法,這題就是乙個變相的fibonacci問題。當n 1時,有1種方法,即直接走1步 當n 2時,有2方法 連續走2步,或直接走兩步 對於n,設f n 為總方法,則 f n f n 1 f n 2 ps f n 1 即第一次走一步的走法,f n 2...

爬樓梯問題

蒜頭君自從春節回來以後,體重就像加了特技一樣duang duang 地暴增起來。於是小蒜頭打算每天爬樓梯來燃燒體內的脂肪 咦?蒜怎麼會有脂肪 蒜頭在爬樓梯的時候腦洞大開,因為蒜頭腿短,爬樓梯的時候一次只能邁1級或2級台階,它就想到了,假如一共有n級台階的話,它一共有多少種方法能夠爬到樓梯頂部呢?聰明...