你是真的“C”——函数递归详解青蛙跳台阶

这篇具有很好参考价值的文章主要介绍了你是真的“C”——函数递归详解青蛙跳台阶。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

   哈喽!😄各位CSDN的uu们,我是你的博客好友小梦,希望我的文章可以给您带来一定的帮助,话不多说,文章推上!欢迎大家在评论区唠嗑指正,觉得好的话别忘了一键三连哦!😘

函数递归之青蛙跳台阶详解分析🙌

青蛙跳台阶的问题是什么样的问题?😊

青蛙跳台阶问题简述: 😍
   一只青蛙可以一次跳 1 级台阶或一次跳 2 级台阶。例如:跳上第一级台阶只有一种跳法:直接跳 1 级即可。跳上两级台阶,有两种跳法: 每次跳 1 级,跳两次; 或者一次跳 2 级。问要跳上第 n 级台阶有多少种跳法?

你是真的“C”——函数递归详解青蛙跳台阶,你是真的“C”,c语言,算法

青蛙跳台阶的跳动图解:🙌

看了上述文字讲解,大家可能还是不够理解,这里已3层台阶为例,分析青蛙跳法和具体过程: 😍
你是真的“C”——函数递归详解青蛙跳台阶,你是真的“C”,c语言,算法
你是真的“C”——函数递归详解青蛙跳台阶,你是真的“C”,c语言,算法
你是真的“C”——函数递归详解青蛙跳台阶,你是真的“C”,c语言,算法

   理清楚思路之后,我们不能发现,青蛙跳台阶的问题也是可以通过函数递归的方法来实现的。
青蛙跳台阶递归代码实现: 😍

int Frog(int n)
{
	if (n == 1)
		return 1;
	else if (n == 2)
		return 2;
	else if (n >= 3)
		return Frog(n - 1) + Frog(n - 2);
}
#include<stdio.h>
int main()
{

	int n = 0;
	scanf("%d", &n);
	int ways = Frog(n);
	printf("跳%d阶台阶方法总数为:%d\n", n, ways);
	return 0;
}

代码测试结果图: 😍
你是真的“C”——函数递归详解青蛙跳台阶,你是真的“C”,c语言,算法
当 n = 4时
Frog (4)
= Frog(3)+ Frog(2)
= Frog (2) + Frog(1)+ Frog(2)
= 2 + 1 +2
= 5

总结撒花💞

青蛙跳台阶的问题,其实和求斐波那契数列的方法很相似,大家对比理解一下就好啦!本篇文章旨在带领大家使用函数递归的知识来求解经典的青蛙跳台阶问题。希望大家通过阅读此文有所收获!😘如果我写的有什么不好之处,请在文章下方给出你宝贵的意见😊。如果觉得我写的好的话请点个赞赞和关注哦~😘文章来源地址https://www.toymoban.com/news/detail-785544.html

到了这里,关于你是真的“C”——函数递归详解青蛙跳台阶的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 青蛙跳台阶问题

    题目:青蛙上楼需要走n个台阶,一次可以跳1个或2个台阶,那它一共有多少中走法 本题运用的递归的写法,由分析可知,青蛙一次只能走1或2个台阶,且有且仅有1中走法,n=2时,有两种走法,假设n=10,则走法共有在当前基础上进行的n-1+n-2种走法相加

    2024年02月12日
    浏览(46)
  • 动态规划--青蛙跳台阶

    斐波那契数列每次学都有不一样的体会,从最开始简单理解就是,一个找规律的游戏,就是更新数值,往后算就行了,但是,后来,用斐波那契数列理解递归算法,是一个很好的例子,由上向下计算,依次回溯,最后,没想到斐波那契数列还能和动态规划联系起来。当然,斐

    2024年02月19日
    浏览(31)
  • Java 算法篇-深入理解递归(递归实现:青蛙爬楼梯)

    🔥博客主页:  小扳_-CSDN博客 ❤感谢大家点赞👍收藏⭐评论✍     文章目录         1.0 递归的说明         2.0 用递归来实现相关问题         2.1 递归 - 阶乘         2.2 递归 - 反向打印字符串         2.3 递归 - 二分查找         2.4 递归 - 冒泡排序         2.5 递归

    2024年02月05日
    浏览(40)
  • 你是真的“C”——宏与函数的英雄本色

        😎博客昵称:博客小梦 😊最喜欢的座右铭:全神贯注的上吧!!! 😊作者简介:一名热爱C/C++,算法等技术、喜爱运动、热爱K歌、敢于追梦的小博主! 😘博主小留言:哈喽! 😄各位CSDN的uu们,我是你的博客好友小梦,希望我的文章可以给您带来一定的帮助,话不

    2023年04月09日
    浏览(31)
  • 你是真的“C”——实用memory类库函数的详细实现和使用

        😎博客昵称:博客小梦 😊最喜欢的座右铭:全神贯注的上吧!!! 😊作者简介:一名热爱C/C++,算法等技术、喜爱运动、热爱K歌、敢于追梦的小博主! 😘博主小留言:哈喽! 😄各位CSDN的uu们,我是你的博客好友小梦,希望我的文章可以给您带来一定的帮助,话不

    2024年02月02日
    浏览(46)
  • 动态规划(一) 变态青蛙跳台阶、最大连续子数组和、字符串分割 附源码讲解

    实现 import java.util.*; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); while (scan.hasNext()){ int length = scan.nextInt(); int[] array = new int[length]; for (int i = 0; i length; i++) { array[i] = scan.nextInt(); } System.out.println(findResult(array)); } } private static int findResult(int[] array) {

    2024年04月17日
    浏览(55)
  • C语言:函数递归详解(建议收藏)

    程序调用自身的编程技巧称为 递归 ( recursion)。 递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接 调用自身 的一种方法, 它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解 。 优点 :函数递

    2024年02月03日
    浏览(42)
  • c语言基础知识帮助理解(函数递归详解)

    \\\"从前有座山,山里有座庙,庙里有个老和尚和一个小和尚。有一天老和尚对小和尚说:“从前有座山.山里有座庙,庙里有个老和尚和一个小和尚,有一天老和尚对小和尚说:“从前有座山.山里有座庙,庙里有个老和尚和一个小和尚......\\\" (虽能体现递归特点,但又不是递归)

    2024年02月14日
    浏览(39)
  • 掌握Go语言:Go语言递归函数,解密编程之谜,探索算法的奥秘!(27)

    递归函数是指在函数内部调用自身的函数。在Go语言中,递归函数使用起来非常方便,但需要注意递归的终止条件,以避免无限循环。 Go语言递归函数的使用方法 在Go语言中,编写递归函数的基本步骤如下: 上述三点内容详细解释如下: 定义一个函数,函数内部调用自身 :

    2024年04月15日
    浏览(55)
  • 掌握Go语言:探索Go语言递归函数的高级奥秘,优化性能、实现并发、解决算法难题(28)

    递归函数在Go语言中是一种强大的工具,能够解决许多复杂的问题。除了基本的递归用法外,Go语言还提供了一些高级用法,使得递归函数更加灵活和强大。本文将深入探讨Go语言递归函数的高级用法,包括尾递归优化、并发递归和记忆化递归等。 尾递归优化 尾递归是一种特

    2024年04月10日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包