70 爬樓梯遞迴和動態規劃java版題解

2021-09-03 03:04:01 字數 461 閱讀 7062

分析:

爬到n,可以是從n-1級樓梯一次爬上來,也可以是從n-2級一次走兩步上來(不能從n-2走一步再走一步,因為走一步就會去到n-1級,重複)。所以有公式f(n)=f(n-1)+f(n-2)

遞推解:

class solution 

return dbnum[n];

}}

動態規劃:

class solution 

if(num==2)

if(dbnum[num]>0)

dbnum[num]=db(num-1)+db(num-2);

return dbnum[num];

}public int climbstairs(int n)

}

70 爬樓梯 動態規劃系列

題目描述 假設你正在爬樓梯。需要 n 階你才能到達樓頂。每次你可以爬 1 或 2 個台階。你有多少種不同的方法可以爬到樓頂呢?注意 給定 n 是乙個正整數。動態規劃五部曲 確定dp陣列以及下標的意義 爬到第i層樓梯,有dp i 種方法 確定狀態轉移方程 從dp i 的定義可以看出,dp i 可以有兩...

動態規劃 爬樓梯

假設你正在爬樓梯,需要n步你才能到達頂部。但每次你只能爬一步或者兩步,你能有多少種不同的方法爬到樓頂部?比如n 3,1 1 1 1 2 2 1 3,共有3種不同的方法 返回 3 解題思路 沒接觸過動態規劃的時候,我用排列組合做的,在我這篇部落格中 可以看一下。實際上,這個題目就是乙個斐波那契數列,這...

爬樓梯 動態規劃

假設你正在爬樓梯。需要 n 階你才能到達樓頂。每次你可以爬 1 或 2 個台階。你有多少種不同的方法可以爬到樓頂呢?注意 給定 n 是乙個正整數。示例 1 輸入 2 輸出 2 解釋 有兩種方法可以爬到樓頂。1.1 階 1 階 2.2 階 示例 2 輸入 3 輸出 3 解釋 有三種方法可以爬到樓頂。1...