LeetCode70爬楼梯

Posted lisin-lee-cooper

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode70爬楼梯相关的知识,希望对你有一定的参考价值。

一.问题描述

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。

每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?

示例 1:

输入:n = 2
输出:2
解释:有两种方法可以爬到楼顶。

  1. 1 阶 + 1 阶
  2. 2 阶

二.示例代码

public class ClimbStairs 

    public static void main(String[] args) 

        int n = 42;

        int result = climbStairs(n);
        System.out.println(result);
        int result2 = climeStairs2(n);
        System.out.println(result2);

    

    private static int climbStairs(int n) 
        if (n == 1 || n == 2) 
            return n;
        
        return climbStairs(n - 1) + climbStairs(n - 2);
    

    private static int climeStairs2(int n) 
        int p1 = 0, p2 = 0, r = 1;
        for (int i = 1; i <= n; i++) 
            p2 = p1;
            p1 = r;
            r = p1 + p2;
        
        return r;
    


以上是关于LeetCode70爬楼梯的主要内容,如果未能解决你的问题,请参考以下文章

「动态规划」LeetCode 70(爬楼梯)

LeetCode70——爬楼梯

LeetCode70. 爬楼梯

Leetcode -- 爬楼梯(70)

LeetCode 70.爬楼梯

LeetCode 70.爬楼梯