70.階段を上る(簡単)

アイデア:

質問は、建物の最上部に登る方法いくつあるかを尋ねました。フィボナッチ数列を使用することを考えるのは自然なことです。

毎回前回の結果に頼って、dpを使うことを考えてください

 

コード:

class Solution {
    public int climbStairs(int n) {
		int[] dp=new int[n+1];
		dp[0]=1;
		dp[1]=1;
		for(int i=2;i<=n;i++){
			dp[i]=dp[i-1]+dp[i-2];
		}
		return dp[n];
    }
}

 

壊す:

1)添え字のオーバーフローを防ぐために、dpが宣言されると、長さはnに基づいて1(n + 1)加算されます。

 

2)これはdpの最初の形式です:(線形

以前の状態の限られた数(2)のみに依存します

おすすめ

転載: blog.csdn.net/di_ko/article/details/115226141