当前位置: 首页 > news >正文

leetcode70

You are climbing a stair case. It takes n steps to reach to the top.

Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top?

题目意思是有N楼,每次只能上1或者2楼,问到N了有多少种情况。

 

简单题,注重一下考虑问题的思路。

到N,只能从N-1和N-2到N,别的均不能直接到N,所以,马上给出递归的算式,前面给出特殊情况的返回。

public class Solution {
    public int climbStairs(int n) {
        if(n<=2)
            return n;
        else
            return climbStairs(n-1) + climbStairs(n-2);
    }
}

然后交了,TLE。

发现递归超时,马上想到,所有的递归均可以用迭代实现,于是,迭代。然后迭代思考过程中发现,这他妈就是个斐波那契数列。。。。然后就没有然后了。

我真蠢。

public class Solution {
    public int climbStairs(int n) {
        if(n<=2)
            return n;
        int a = 1;
        int b = 2;
        int c = a + b;
        for(int i=2;i<n-1;i++)
        {
            a = b;
            b = c;
            c = a+b;
        }
        return c;
    }
}

相关文章:

  • Linux相关免费软件下载链接地址
  • Python   Pexpect
  • 前端组件化Polymer入门教程(3)——快速入门
  • 仿天猫超市收藏抛物线动画工具库
  • jq的所有事件
  • iOS移动开发周报-第22期
  • Makefile-入门与进阶【转】
  • PHP 合并数组 追加数组例子
  • django文件上传下载
  • 【228】◀▶ Excel 函数说明?
  • lvm 动态扩展
  • 开启总结之路
  • ios 缺少合规证明
  • V-rep学习笔记:机器人逆运动学数值解法(Cyclic Coordinate Descent Method)
  • SQLMAP注入json格式数据
  • 【跃迁之路】【585天】程序员高效学习方法论探索系列(实验阶段342-2018.09.13)...
  • CSS魔法堂:Absolute Positioning就这个样
  • eclipse(luna)创建web工程
  • Github访问慢解决办法
  • httpie使用详解
  • leetcode98. Validate Binary Search Tree
  • Linux编程学习笔记 | Linux IO学习[1] - 文件IO
  • Nacos系列:Nacos的Java SDK使用
  • PV统计优化设计
  • vue-cli3搭建项目
  • WePY 在小程序性能调优上做出的探究
  • 阿里云购买磁盘后挂载
  • 二维平面内的碰撞检测【一】
  • 如何解决微信端直接跳WAP端
  • 我与Jetbrains的这些年
  • 要让cordova项目适配iphoneX + ios11.4,总共要几步?三步
  • ​力扣解法汇总1802. 有界数组中指定下标处的最大值
  • #中国IT界的第一本漂流日记 传递IT正能量# 【分享得“IT漂友”勋章】
  • (12)Hive调优——count distinct去重优化
  • (173)FPGA约束:单周期时序分析或默认时序分析
  • (Bean工厂的后处理器入门)学习Spring的第七天
  • (echarts)echarts使用时重新加载数据之前的数据存留在图上的问题
  • (Git) gitignore基础使用
  • (Java)【深基9.例1】选举学生会
  • (Java岗)秋招打卡!一本学历拿下美团、阿里、快手、米哈游offer
  • (poj1.3.2)1791(构造法模拟)
  • (强烈推荐)移动端音视频从零到上手(上)
  • (三)Pytorch快速搭建卷积神经网络模型实现手写数字识别(代码+详细注解)
  • (一)插入排序
  • (一)基于IDEA的JAVA基础1
  • (一)为什么要选择C++
  • (转)Oracle存储过程编写经验和优化措施
  • (转)程序员疫苗:代码注入
  • .NET Micro Framework 4.2 beta 源码探析
  • .NET6实现破解Modbus poll点表配置文件
  • .NET开发不可不知、不可不用的辅助类(一)
  • .NET开发人员必知的八个网站
  • .net连接MySQL的方法
  • .net下简单快捷的数值高低位切换
  • .NET正则基础之——正则委托