当前位置:网站首页>《c语言》青蛙跳台阶递归问题
《c语言》青蛙跳台阶递归问题
2022-07-31 06:42:00 【郭郭学习之旅】
题目:
一只青蛙可以一次跳 1 级台阶或一次跳 2 级台阶,例如:跳上第一级台阶只有一种跳法:直接跳 1 级即可。跳上两级台阶,有两种跳法: 每次跳 1 级,跳两次; 或者一次跳 2 级.问要跳上第 n 级台阶有多少种跳法?
思路分析:
首先我们可以考虑到,青蛙在只有一层台阶的时候只会有一种跳法,在两层台阶的时候会有两种跳法
那么我们尝试考虑一下如果有三个台阶呢,小青蛙可以有了多种选择,他可以选择一个一个
也可以选择第一次跳一个台阶,第二次直接跳两个台阶
还可以选择第一次跳两个台阶,然后再跳一个台阶
那么综上所述,我们可以得到
如果有一个台阶的话,小青蛙有一种跳法;
如果有两个台阶的话,小青蛙有两种跳法;
如果有三个台阶的话,小青蛙有三种跳法;
如果有四个台阶的话,小青蛙有五种跳法;
……………………
那么我们可以考虑到,无非小青蛙的跳法就是n-1个台阶的跳法次数+n-2个台阶的跳法次数
所以我们代码可以如下所示
int frog(int n) {
if (n == 1)return 1;
else if (n == 2)return 2;
else return frog(n - 1) + frog(n - 2);
}
好了本次思路就分享到这~~感谢大家三连支持
边栏推荐
- 【微服务】Nacos集群搭建以及加载文件配置
- 完美指南|如何使用 ODBC 进行无代理 Oracle 数据库监控?
- 任务及任务切换
- Zabbix6.2 Surprise Release!Especially optimize the performance of medium and large environment deployment!
- SQLite数据库连接字符串
- gstreamer's caps event and new_segment event
- 进程调度的基本过程
- LeetCode:952. 按公因数计算最大组件大小【欧拉筛 + 并查集】
- 《白帽子说Web安全》思维导图
- 2. (1) Chained storage of stack, operation of chain stack (illustration, comment, code)
猜你喜欢
随机推荐
什么是半波整流器?半波整流器的使用方法
毫米波技术基础
[PSQL] 复杂查询
2022.07.14_每日一题
2022.07.24_每日一题
[PSQL] Complex query
2022.07.18 _ a day
Super detailed mysql database installation guide
04-SDRAM: Read Operation (Burst)
Zabbix6.2 Surprise Release!Especially optimize the performance of medium and large environment deployment!
基金投顾业务
Jobject 使用
【Go报错】go go.mod file not found in current directory or any parent directory 错误解决
Web浏览器工作流程解析
2022.07.20_Daily Question
Yu Mr Series 】 【 2022 July 022 - Go Go teaching course of container in the dictionary
链表实现及任务调度
2022.07.13_Daily Question
2022.07.13_每日一题
2022.07.15_每日一题