递归算法
基本思想:
递归算法一般用于将较为复杂的规模较大的问题分解成规模较小的同类问题,通过函数或子过程直接或间接调用自身,以小规模问题解决复杂问题,使复杂问题简单化,使程序更加简洁,是解决很多计算问题的常用方法。递归算法程序代码简单,难点主要在递归模型的构建,即递归参数的寻找、递归出口的设计以及递归函数的调用等。由于递归函数的调用是通过栈空间实现的,过深的递归调用和不当的递归出口都容易造成栈溢出和超时问题,使用时需注意。下面以第39级台阶为例体会递归的运用:
第39级台阶:
题目描述:
小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!

本文探讨了如何使用递归算法解决一个有趣的数学问题:每步上1个或2个台阶,总共39级,每步都交替进行,求所有不同的上法。通过分析递归模型,构建类似二叉树的结构,提出递归公式,并指出递归调用的关键在于剩余台阶数和已走步数。
最低0.47元/天 解锁文章
1056

被折叠的 条评论
为什么被折叠?



