演算法之爬樓梯

2021-08-30 11:27:49 字數 390 閱讀 8291

題目:假設你正在爬樓梯。需要 n 階你才能到達樓頂。每次你可以爬 1 或 2 個台階。你有多少種不同的方法可以爬到樓頂呢?

沙雕解法一:利用遞迴,就是最後一步一定是前一步走一步或倒退兩步走兩步,超時!

#include "pch.h"

#include #include using namespace std;

int add(int n)

int main()

好的解法:利用迴圈,時空複雜度都較小

class solution 

return current;}}

}};

排名30萬。

以及今天犯了乙個沙雕錯誤,都不好意思說

python爬樓梯演算法 爬樓梯(Python3)

假設你正在爬樓梯。需要 n 階你才能到達樓頂。每次你可以爬 1 或 2 個台階。你有多少種不同的方法可以爬到樓頂呢?注意 給定 n 是乙個正整數。示例 1 輸入 2 輸出 2 解釋 有兩種方法可以爬到樓頂。1 階 1 階 和 2 階 解題思路 實現了兩種方法,但是第一種超出時間限制 因為遞迴的時候方...

爬樓梯演算法

有n階樓梯,有1,2,3 走m步走完樓梯,一共有多少種走法,並輸出所有的走法 設走n階台階的走法數為 f n 可以得到 f 1 1 f 2 2 f 3 4 對於n 3時,縮小問題規模 最後一步上乙個台階的話,之前上了n 1個台階,走法為f n 1 最後一步上兩個台階的話,之前上了n 2個台階,走法為...

演算法題 爬樓梯

題幹 假設你正在爬樓梯。需要 n 階你才能到達樓頂。每次你可以爬 1 或 2 個台階。你有多少種不同的方法可以爬到樓頂呢?注意 給定 n 是乙個正整數。示例 核心思想 這題明顯是一道遞迴題,通用公式是climbstairs n climbstairs n 1 climbstairs n 2 但是直接...