递归经典例题 --- 青蛙跳台阶(图文详解)
创始人
2024-01-29 14:24:26
0

目录

一、介绍

二、解题思路

                介绍动态规划法

三、代码实现


一、介绍

所谓的青蛙跳台阶问题,就是指一只青蛙一次可以跳上1级台阶,也可以跳上2级(最多只能跳2级)。求该青蛙跳上一个n级的台阶总共有多少种跳法。

二、解题思路

首先得找其规律,这里我用图来帮助大家理解。

①若n = 1,只有一级台阶,很显然就只有一种跳法

②若 n = 2,一共有两级台阶,共有两种跳法

第一种:一级一级跳(黑线)

第二种:一口气跳2级(红线)

③若n = 3,一共有三级台阶,共有三种跳法

第一种:一级一级跳(黑线)

第二种:先跳两级,再跳一级(红线)

第三种:先跳一级,再跳两级(黄线)

 

 大家看到这里,心里想是不是有n个台阶,就对应有n种跳法。让我们接着往下看

④若n = 4,一共有四级台阶,共有5种跳法

第一种:一级一级跳(黑线)

第二种:先跳一级,再跳两级,最后再跳一级(红线)

第三种:先跳一级,再跳一级,最后再跳两级(蓝线)

第四种:先跳两级,再跳一级,最后再跳一级

第五种:先跳两级,再跳两级

(太乱了未画完,大家明白就好)

介绍动态规划法:

大家数着数着有没有发现,是不是快要把自己给数懵了,那有没有什么好的方法呢?这里我就要给大家介绍动态规划法:用上一步的结果,来快速计算得到下一步的结果。

举个例子

看下图,若台阶数n = 4,假设小青蛙先跳一级台阶,接下来它是不是还有三级台阶要跳,而三级台阶跳法个数刚刚我们算过了,一共有3种跳法,或者小青蛙也可以先跳二级台阶,那么接下来它面对的台阶数为二,而二级台阶数的跳法就有2种。所以对于四级台阶数,小青蛙的跳法一共是3+2=5种跳法。

 接下来回到解题思路上来

⑤ 若n = 5,一共有五级台阶,共有8种跳法

(这里分析就省略了,大家还可以用动态规划法来分析)

看到这里大家是不是发现规律了

n<=3时,就对应其台阶数

n>3时,不就是前一个数的跳法加上后一个数的跳法,不就是斐波那契数

(*深入学习函数(3)-- 递归篇(图文详解)_Weraphael的博客-CSDN博客)

既然知道了规律,就赶紧敲代码来验证吧!

三、代码实现:

#include 
int Jump(int n)
{if (n <= 3){return n;  //返回对应的台阶数}elsereturn Jump(n - 1) + Jump(n - 2);//斐波那契问题
}
int main()
{int n = 0;//台阶数//输入台阶数scanf("%d", &n);int ret = Jump(n);printf("一共有%d种跳法。\n", ret);return 0;
}

接下来看看代码效果(部分):

 显然符合预期!

看到这里,你是否真的学会了小青蛙跳台阶问题呢?

相关内容

热门资讯

“生拼硬凑”的意思 “生拼硬凑”的意思 成语拼音: [shēng pīn yìng còu] ...
“旁指曲谕”的意思 “旁指曲谕”的意思 成语拼音: [páng zhǐ qǔ yù] ...
表示伤心的成语 表示伤心的成语  成语是汉语词句的特殊用法,是汉语的一大特色,也是汉语独有的语言。成语是一种相习沿用...
十二生肖“蛇”的成语 十二生肖“蛇”的成语  我们都知道蛇是十二生肖之一,那么,以下是小编给大家整理收集的十二生肖“蛇”的...
“挟天子以令天下”的意思 “挟天子以令天下”的意思 成语拼音: [xié tiān zǐ yǐ lìng tiān...
“杯水车薪”的意思 “杯水车薪”的意思 成语拼音: [bēi shuǐ chē xīn] ...
形容秋天的风的词语 形容秋天的风的词语  导语:在秋天里,秋风透着习习凉意,钻进敞开的窗子,轻抚脸颊,带来几分凄美的感觉...
“十字街口”的意思 “十字街口”的意思 成语拼音: [shí zì jiē kǒu] ...
“千虑一失”的意思 “千虑一失”的意思 成语拼音: [qiān lǜ yī shī] ...
“背城一战”的意思 “背城一战”的意思 成语拼音: [bèi chéng yī zhàn] ...
“平复如旧”的意思 “平复如旧”的意思 成语拼音: [píng fù rú jiù] ...
带有金字的成语及解释 带有金字的成语及解释  以“金”字开头的成语及解释如下:  [金字招牌] 旧时店铺为显示资金雄厚而用...
“猪八戒吃人参果,全不知滋味... “猪八戒吃人参果,全不知滋味”的意思 成语拼音: [zhū bā jiè chī rén...
“进退路穷”的意思 “进退路穷”的意思 成语拼音: [jìn tuì lù qióng] ...
语重心长成语接龙 语重心长成语接龙  【成语】: 语重心长  【拼音】: yǔ zhòng xīn ch...
“寸田尺宅”的意思 “寸田尺宅”的意思 成语拼音: [cùn tián chǐ zhái] ...
“望风希旨”的意思 “望风希旨”的意思 成语拼音: [wàng fēng xī zhǐ] ...
三不开成语解析 三不开成语解析  【成语】:三不开  【拼音】:sān bù kāi  【简拼】:sbk  【解释】...
“摇笔即来”的意思 “摇笔即来”的意思 成语拼音: [yáo bǐ jí lái] ...
“巧言偏辞”的意思 “巧言偏辞”的意思 成语拼音: [qiǎo yán piān cí] ...