`
Cwind
  • 浏览: 265479 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
博客专栏
793bb7df-a2a9-312d-8cb8-b66c3af482d1
LeetCode题解
浏览量:53531
社区版块
存档分类
最新评论

LeetCode[动态规划] - #7 Climbing Stairs

阅读更多

原题链接:#7 Climbing Stairs

 

问题:

你正在攀爬一把一共有n个台阶的梯子,每次可以爬一或二阶,爬到顶共有多少种不同的方式?

 

难度:简单

 

分析:

当梯子阶数为0时,有0种攀爬方式;当阶数为1时,则有一种攀爬方式。当阶数为2时,由于每次可以爬一阶或两阶,即从0阶处爬两阶到达顶部或由1阶处爬1阶到达顶处,共2种方式。n=3时同样,可以由1阶处爬两阶或由2阶处爬1阶到达。设对于i阶阶梯不同的攀爬方式为S(i),可得递推公式为 S(i) = S(i-1) + S(i-2) (2≤i≤n) (看起来很眼熟 ;-))

 

解决方案:

Java - 244ms

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

        int[] ways = new int[n+1];
        ways[0] = 0;
        ways[1] = 1;
        ways[2] = 2;

        for(int i=3; i<=n; i++){
            ways[i] = ways[i-1] + ways[i-2];
        }

        return ways[n];
    }

 简单测试程序

    

1
1
分享到:
评论

相关推荐

    js-leetcode题解之70-climbing-stairs.js

    javascript js_leetcode题解之70-climbing-stairs.js

    c语言-leetcode题解之0070-climbing-stairs

    c语言入门 c语言_leetcode题解之0070_climbing_stairs

    c语言-leetcode题解之0070-climbing-stairs.zip

    c c语言_leetcode题解之0070_climbing_stairs.zip

    leetcode走楼梯-LeetCode_70--Climbing-Stairs:LeetCode_70--爬楼梯

    leetcode 走踏板LeetCode_70--爬楼梯 你正在爬楼梯。 需要n步才能到达顶部。 每次您可以爬 1 或 2 个台阶。 你可以通过多少种不同的方式登上顶峰? 注意:给定 n 将是一个正整数。 示例 1: 输入:2 输出:2 说明:...

    leetcode走楼梯-leet-climbing-stairs-70:leet-climbing-stairs-70

    leetcode 走踏板爬楼梯 你正在爬楼梯。 需要n步才能到达顶部。 每次您可以爬 1 或 2 个台阶。 你可以通过多少种不同的方式登上顶峰? 注意:给定 n 将是一个正整数。 示例 1: 输入:2 输出:2 解释:有两种方法可以...

    leetcode走楼梯-Climbing-Stairs:力码练习

    "走楼梯"(Climbing Stairs)是其中一道经典的动态规划问题,它的目的是通过递归或迭代的方法,计算出在给定的步数内,以每次一步或两步的方式登上楼梯的不同方法数量。这道题目不仅有助于理解动态规划的概念,还能...

    leetcode走楼梯-Climbing-Stairs:Leetcode问题70

    leetcode 走踏板爬楼梯 Leetcode 问题 70 你正在爬楼梯。 需要n步才能到达顶部。 每次您可以爬 1 或 2 个台阶。 你可以通过多少种不同的方式登上顶峰? 示例 1: Input: 2 Output: 2 Explanation: There are two ...

    javalruleetcode-learn-algorithms::laptop:Java实现的各种算法题解

    Stairs](./leetcode/动态规划-Climbing Stairs.java) [动态规划-Decode Ways](./leetcode/动态规划-Decode Ways.java) [动态规划-Distinct Subsequences](./leetcode/动态规划-Distinct Subsequences.java) [动态...

    C++-leetcode题解之746. Min Cost Climbing Stairs.cpp

    c++ C++_leetcode题解之746. Min Cost Climbing Stairs.cpp

    leetcode怎么销号-LeetCode-Solutions:我自己的LeetCode解决方案

    leetcode怎么销号 LeetCode-Solutions :green_heart:My own LeetCode solutions No. Problem ...动态规划 0069 Sqrt(x) Easy 二分、牛顿迭代 0070 Climbing Stairs Easy 动态规划 0075 Sort Colors M

    LeetCode:Leetcode-解决方案

    ================ LeetCode ================动态编程1. Min Cost Climbing Stairs [746]2. Best Time to Buy and Sell Stock [121]3. Climbing Stairs [70]4. Maximum Subarray [53]5. House Robber [198]6. Range ...

    leetcode1477-coding-for-fun:编码乐趣

    动态规划 参考: 第一天: [待办事项] 509.fibonacci-number.cpp [待办事项] 322.coin-change.cpp 第 2 天: [待办事项] 62.unique-paths.cpp [TODO] 5. 最长回文子串.cpp 第 3 天: [TODO] 96.unique-binary-search...

    leetcode答案-LeetCode:Swift中的LeetCode

    leetcode 答案LeetCode LeetCode in Swift 这个Repo 用来存下我在LeetCode 解题的原始档,包含解题中遇到的错误,也包含解出AC 的答案, 以下的清单将连结到我的Github Pages 中,皆有题目中文翻译与解题的过程。...

    leetcode答案-LeetCode-Trip:LeetCode刷题代码,大佬勿入

    leetcode 答案 LeetCode-Trip LeetCode刷题代码,大佬勿入。 为一年后的研究生找工作准备 目标是BAT的算法岗哈哈哈哈哈 争取做到每日一更 嗯…… 19.10.22:鸽了这么久,我又回来了……主要在实验室天天没啥事,过于...

    leetcode写题闪退-LeetCode:leetcodeOJ

    动态规划,类似于求最大连续和,但这里由于是乘法,还要考虑符号问题。于是需要记录最大与最小值。 Reverse Words in a String C++实现时那个返回值是void也着实让我困惑了好久 Subsets DFS实现,竟然还WA了好几次。...

    leetcode2sumc-Leetcode_questions:Leetcode_questions

    53.最大子数组(python:动态规划)** 58.Last Word (c++) 66.Plus One (c++) 67.添加二进制(C++) 69.Sqrt(x) (c++:二元除法) 70.Climbing Stairs(c++:Dynamic Programming) 83.从排序列表中删除重复项(c++) 88....

    leetcode走楼梯-LeetCodeCpp:LeetCode/C++/Solution&TestCase

    "走楼梯"是 LeetCode 中的一道经典问题,也被称为 " Climbing Stairs "(爬楼梯)。这道题目通常出现在二叉树、递归和动态规划等相关知识点的学习路径上。 走楼梯问题描述如下:假设你正在爬楼梯,每次可以跨一阶或...

    leetcode-cpp刷题

    - **2.1.18 Climbing Stairs** - 上楼梯问题,每次可以上1阶或2阶。 - 实现思路:动态规划,记录到达每一阶的方案数。 - **2.1.19 Gray Code** - 生成格雷编码序列。 - 实现思路:基于位运算的规律。 - **...

    leetcode卡-leetcode:利特码解决方案

    leetcode卡 leetcode exercises 3-5 solutions everyday. fighting~ TODO array Best ...动态规划:背包问题、最长子序列 数据结构,主要有如下几种: 数组与链表:单 / 双向链表 栈与队列 哈希表 堆:

Global site tag (gtag.js) - Google Analytics