我的递归:
定义:一个函数直接或间接调用自己,
条件:
1、明确的终止条件;
2、该函数所处理的数据规模必须在递减;
3、这个转化必须是可解的。
递归和循环:
递归:
易于理解;
速度慢;
存储空间大。
循环:反之。
将A上的n-1个盘子借助C移动到B;
将A上的第n个直接移动到C;
将B上的n-1个盘子借助A移动到C;
很多数学公式一递归实现。
斐波那契序列:
1 2 3 5 8 13 21 34;
定义:一个函数直接或间接调用自己,
条件:
1、明确的终止条件;
2、该函数所处理的数据规模必须在递减;
3、这个转化必须是可解的。
递归和循环:
递归:
易于理解;
速度慢;
存储空间大。
循环:反之。
递归举列:
1):阶乘
2):汉诺塔-核心算法:将A上的n-1个盘子借助C移动到B;
将A上的第n个直接移动到C;
将B上的n-1个盘子借助A移动到C;
递归的应用:
树和森林就是一递归定义的;
树和图的很多算法以递归实现;很多数学公式一递归实现。
斐波那契序列:
1 2 3 5 8 13 21 34;