首页 > 代码库 > 递归程序设计
递归程序设计
一般定义: 程序调用自身的编程技巧称为递归(recursion)。
递归做为一种算法设计技巧,是指函数/过程/子程序在运行过程中直接或间接调用自身而产生的重入现象。
递归过程总是一个过程还未执行完就执行另一个过程(但是执行另一过程前会保存未执行完时候的变量值),如此反复,一直执行到边界条件,执行完余下的过程后,返回上一次未执行完的过程执行(此时使用的是当时的变量),如此反复,直到回到起始位置。
设计递归程序的基本思路:
1、先弄清楚递归的顺序。在递归的实现中,往往需要假设后续的调用已经完成,在此基础之上,才实现递归的逻辑。
2、考虑递归退出的边界条件。
一个简单递归程序的模板
void recurs(argumentlist){ statements1; if(未达到边界条件) { recurs(argumentlist); } statements2;}
更深入的理解递归程序可以参见http://www.ibm.com/developerworks/cn/linux/l-recurs.html
递归程序设计
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。