【剑指offer】09-2跳台阶,C++实现
2024-09-02 22:02:34
原创博文,转载请注明出处!
# 本文是牛客网《剑指offer》刷题笔记
1.题目
# 一只青蛙一次可以跳1级台阶,也可以跳2级。求该青蛙跳n级的台阶总共有多少种跳法。
2.思路
# 跳0级,f(0)=0
# 跳1级,一次跳一级一种跳法,f(1)=1
# 跳2级,第一次跳一级和第一次跳两级两种跳法,f(2)=2
# 跳3级,第一次跳一级(剩余两级有f(2)种跳法)和第一次跳两级(剩余一级有f(1)种跳法),f(3)=f(2)+f(1)
# 跳n级,第一次跳一级(剩余n-1级有f(n-1)种跳法)和第一次跳两级(剩余n-2级有f(n-2)种跳法),f(n)=f(n-1)+f(n-2)-----裴波那切数列
3.code
# 返回值--跳n级台阶的跳法
# 参数--n级台阶
class Solution {
public:
int jumpFloor(int number) { if(number<=0)
return 0; if(number<3)
return number; int a=1;
int b=2;
int c=0;
for(int i=3;i<=number;++i){
c=a+b;
a=b;
b=c;
}
return c;
}
};
最新文章
- Errore Http 404.2
- linux库列表
- [C程序设计语言]第四部分
- ios多线程和进程的区别(转载)
- 李洪强iOS开发之【零基础学习iOS开发】【01-前言】01-开篇
- javascript 事件设计模式
- js正则:零宽断言
- SE 2014年3月31日
- Autodesk FBX SDK Program 中文 (二)
- ML—高斯判别分析
- ●BOZJ 4456 [Zjoi2016]旅行者
- VsCode调试js
- EasyPOI校验实现返回错误信息及行号
- mysql字符集问题,及排序规则
- MySQL错误[ERR] 1064 - You have an error in your SQL syntax;
- 吴裕雄 oracle 函数、触发器和包编程
- python 获取自身ip
- 试着用React写项目-利用react-router解决跳转路由等问题(二)
- BIOS和CMOS【转载】
- chrome 常用插件集锦