leetcode-70-easy

Climbing Stairs
思路一: 动态规划,假设爬上第 n 阶楼梯,完全分类只可能存在两种情况

  1. 在 n-1 楼梯处直接一步上来
  2. 在 n-2 楼梯处直接两步上来

所以 爬上第 n 阶楼梯的方法: f(n) = f(n-1) + f(n+1)

public int climbStairs(int n) {
    if (n == 1 || n == 2) return n;

    int result = 0;
    int stepOne = 1;
    int stepTwo = 2;

    for (int i = 3; i <= n; i++) {
        result =  stepOne + stepTwo;
        stepOne = stepTwo;
        stepTwo = result;
    }

    return result;
}
posted @ 2022-10-13 09:19  iyiluo  阅读(19)  评论(0)    收藏  举报