博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Leetcode Climbing Stairs
阅读量:4515 次
发布时间:2019-06-08

本文共 656 字,大约阅读时间需要 2 分钟。

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?

熟悉斐波那契数列的一看就知道斐波那契数列是0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ...

其通项是f[k] = f[k-1]+f[k-2],k>=2

其中f[0] = 0, f[1] = 1;

而此题类似斐波那契数但初始值有点不同

f[0] = 0, f[1]= 1, f[2] = 2, 对其迭代就行

int climbStairs(int n){    if(n == 0 || n == 1 || n == 2) return n;    int stepOne = 1, stepTwo = 2, result = 0;    for(int i = 3; i <= n ; ++ i){        result = stepOne + stepTwo;        stepOne = stepTwo;        stepTwo = result;    }    return result;}

 

转载于:https://www.cnblogs.com/xiongqiangcs/p/3803156.html

你可能感兴趣的文章
对话框--pop&dialog总结
查看>>
Array.isArray() 和 isObject() 原生js实现
查看>>
1064. Complete Binary Search Tree
查看>>
DOM元素的大小和位置
查看>>
进程间通信
查看>>
Golang教程:结构体
查看>>
需求文档中容易出的错误
查看>>
算法训练 安慰奶牛
查看>>
poj1426_kuagnbin带你飞专题一
查看>>
安装关系型数据库MySQL 安装大数据处理框架Hadoop
查看>>
软件定义网络(SDN)研究进展
查看>>
NOI2019 SX 模拟赛 no.5
查看>>
lambda表达式
查看>>
Delphi中使用DirectX截屏函数
查看>>
给内联元素设置宽高的几种方式
查看>>
Linux下定时切割Mongodb数据库日志并删除指定天数前的日志记录(转)
查看>>
MariaDB -- 数据类型
查看>>
JS 学习笔记--8---Function类型
查看>>
进程环境
查看>>
Clean Code 《代码整洁之道》前四章读书笔记
查看>>