LeetCode热题100道-Day03

11,252 阅读1分钟

LeetCode热题100道-Day03

70. 爬楼梯

  • 动态规划问题。第n个台阶只能从第n-1或者n-2个上来。第n-1个台阶的走法 + 第n-2个台阶的走法 = 到第n个台阶的走法。
class Solution {
    public int climbStairs(int n) {
        int a = 1,b = 2, temp = 0;
        if(n == 1){
            return 1;
        }
        if(n == 2){
            return 2;
        }
        for(int i = 3; i <= n; i++ ) {
            temp = a;
            a = b;
            b = temp + b;
        }
        return b;
    }
}
func climbStairs(n int) int {
    a, b, temp := 1, 2, 0
    if n == 1{
        return 1
    }
    if n == 2{
        return 2
    }
    for i := 3; i <= n; i++{
        temp = a
        a = b
        b = temp + a
    }
    return b
}