leetcode刷题之旅——70. Climbing Stairs
来源:互联网 发布:淘宝怎么查看消费记录 编辑:程序博客网 时间:2024/05/29 06:29
继续做一道easy的动态规划题目,通过率38%
题目大意:
现在给定一个有n个台阶的楼梯,你现在在最下面,而且你每步只能迈一个或者两个台阶。如果要你到达楼梯的顶端,你可以采用几种不同的方法来走。
算法:
用动态规划算法来解决这道题目,首先我们考虑第一步的问题。第一步可以走两个台阶,也可以走一个台阶,所以就分了两种情况。一种情况是,我们第一步只走一个台阶,这样的话,就有f(n-1)种走法,同样的,如果我们第一步走两个台阶,我们就有了f(n-2)种走法。
现在我们要考虑的问题就是,给定初始值。f(0)=0,f(1)=1,f(2)=2,这是我们已知的三个初始值,所以我们的程序就非常简单,复杂度为O(n)。
代码:
class Solution {public: int climbStairs(int n) { if(n==0) return 0; if(n==1) return 1; if(n==2) return 2; int k1=1,k2=2,k3=3; for(int i=3;i<=n;i++) { k3=k1+k2; k1=k2; k2=k3; } return k3; }};
0 0
- leetcode刷题之旅——70. Climbing Stairs
- LeetCode —— 70. Climbing Stairs
- LeetCode——Climbing Stairs
- LeetCode——Climbing Stairs
- LeetCode——Climbing Stairs
- leetcode——Climbing Stairs
- LeetCode——Climbing Stairs
- LeetCode 之 Climbing Stairs
- LeetCode之Climbing Stairs
- leetcode 之 Climbing Stairs
- LeetCode之Climbing Stairs
- leetcode之Climbing Stairs
- leetcode之 climbing stairs
- 【Leetcode】之Climbing Stairs
- LeetCode之Climbing Stairs
- leetcode 刷题之路 92 Climbing Stairs
- [LeetCode]70.Climbing Stairs
- LeetCode --- 70. Climbing Stairs
- 虚幻引擎源码分析(4)
- 如何再IDEA 上使用java web开发
- NFC的读写卡模式——前台调度系统
- Oracle11g字符集AL32UTF8与ZHS16GBK相互转换
- 报错Ignoring InnerClasses attribute for an anonymous inner class,但编译运行正常
- leetcode刷题之旅——70. Climbing Stairs
- Hibernate5.2.4注解
- UVA 11624
- LeetCode 66. Plus One
- shell基础
- VR系列——Oculus Audio sdk文档:二、Oculus音频SDK指南(6~8)——平台笔记,中间设备支持以及Oculus硬件功能
- 【RxJava】的学习(一)
- MediaScannerService研究
- 输出大写字母字符串中每个大写字母之后的第5个字母所对应的小写字母