摘要:
斐波那契数列中的递归思想 如果上述的分析都明白了,那就说明你已掌握了递归,但为了加深对递归的理解,我们再来看一个思考题(来自程序员的数学思考题),题目是这样的,假如动物中有一种特殊的种类,它出生2天后就开始以每天1只的速度繁殖后代。假设第1天,有1只这样的动物(该动物刚出生,从第3天开始繁殖后代)。 阅读全文
摘要:
关于阶乘这里简单说明一下 递归算法的定义(从程序的角度):任何调用自身函数的过程都可以称为递归算法(前面实现的汉诺塔程序就是一个很好的例子)。这里需要注意的是递归必须满足以下两个条件: ①边界条件:至少有一条初始定义是非递归的,如汉诺塔的H(0)=0,阶乘的0!=1。 ②递归通式:由已知函数值逐步计 阅读全文
摘要:
目前看过的书籍中分析递归最好的是日本人吉城浩写的《程序员的数学》 总结: 汉诺塔 汉诺塔的问题 现在我们先不需要知道递归是什么,也没必要,我们先来看一个非常经典的游戏—汉诺塔,该游戏是数学家爱德华卢卡斯于1883年发明的,游戏的规则如下,有三根细柱(A、B、C),A柱上套着6个圆盘,圆盘的大小都不一 阅读全文