CSDN论坛 > 其他技术论坛 > 数据结构与算法

怎样理解递归程序最好 [问题点数:1分,结帖人anjie]

Bbs1
本版专家分:0
结帖率 100%
CSDN今日推荐
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Blank
红花 2002年4月 专题开发/技术/项目大版内专家分月排行榜第一
2002年3月 专题开发/技术/项目大版内专家分月排行榜第一
2002年1月 专题开发/技术/项目大版内专家分月排行榜第一
2001年12月 专题开发/技术/项目大版内专家分月排行榜第一
2001年10月 专题开发/技术/项目大版内专家分月排行榜第一
2001年9月 专题开发/技术/项目大版内专家分月排行榜第一
2001年8月 专题开发/技术/项目大版内专家分月排行榜第一
Blank
黄花 2002年5月 专题开发/技术/项目大版内专家分月排行榜第二
2002年2月 专题开发/技术/项目大版内专家分月排行榜第二
2001年11月 专题开发/技术/项目大版内专家分月排行榜第二
2001年7月 专题开发/技术/项目大版内专家分月排行榜第二
Blank
蓝花 2002年6月 专题开发/技术/项目大版内专家分月排行榜第三
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Blank
红花 2002年4月 专题开发/技术/项目大版内专家分月排行榜第一
2002年3月 专题开发/技术/项目大版内专家分月排行榜第一
2002年1月 专题开发/技术/项目大版内专家分月排行榜第一
2001年12月 专题开发/技术/项目大版内专家分月排行榜第一
2001年10月 专题开发/技术/项目大版内专家分月排行榜第一
2001年9月 专题开发/技术/项目大版内专家分月排行榜第一
2001年8月 专题开发/技术/项目大版内专家分月排行榜第一
Blank
黄花 2002年5月 专题开发/技术/项目大版内专家分月排行榜第二
2002年2月 专题开发/技术/项目大版内专家分月排行榜第二
2001年11月 专题开发/技术/项目大版内专家分月排行榜第二
2001年7月 专题开发/技术/项目大版内专家分月排行榜第二
Blank
蓝花 2002年6月 专题开发/技术/项目大版内专家分月排行榜第三
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Blank
黄花 2012年2月 Oracle大版内专家分月排行榜第二
Bbs1
本版专家分:0
匿名用户不能发表回复!
其他相关推荐
漫谈递归:递归的思想
为什么要用递归 编程里面估计最让人摸不着头脑的基本算法就是递归了。很多时候我们看明白一个复杂的递归都有点费时间,尤其对模型所描述的问题概念不清的时候,想要自己设计一个递归那么就更是有难度了。 很多不理解递归的人(今天在csdn里面看到一个初学者的留言),总认为递归完全没必要,用循环就可以实现,其实这是一种很肤浅的理解。因为递归之所以在程序中能风靡并不是因为他的循环,大家都知道递归分两步
到底如何理解递归?
学习递归是从汉诺塔问题开始接触并展开的,但是从汉诺塔问题就无法理解透彻,书中介绍的以压栈弹栈的解决方法一步步演示汉诺塔问题,但是虽然图画的很细致基本上每一步骤都画出来了但是光是返还时的地址就搞晕了头,看了快十几遍都是到后来找错返还地址,然后上网查找资料尝试理解 假设前n-1次都已经完成了递归,再这最后一次完成递归 的思想,理解多多少少理解了,但是也是在看到代码的情况下才能大概 根据刚刚讲的想法强行
如何通俗的理解递归
本文转载出处:http://www.oschina.net/question/274508_50195 首先,递归,你可以想想成循环。for循环也可以看作类似递归的东西。但是for循环和递归有个本质区别在于,for循环,是在循环外,进行判断,以决定是否直接退出。而递归,是在循环体内判断,是否退出本次循环。这里就有两个差别了。 1、并不是说for循环不能在循环体内跳出,完全可以,但是希望强调,这
关于递归实现过程的详解
最近在学数据结构的时候,碰到了递归,但由于自己一直对递归一知半解,所以不能全面的理解递归的过程到底是怎样实现的,下来研究了一下,觉得还是有所收获的。  假设我们用递归实现一个数的阶乘。int fun(int n) { if(n == 0) return 1; else return n*fun(n-1); }这里递归调用的过程为: 递归调用 其实就是函数的调用而已,只不过这
对递归的理解归纳
原文链接:http://www.nowamagic.net/librarys/veda/detail/2314 /**  * 观察归纳法我们发现:递归的数学模型就是归纳法:  * 归纳法适用于把一个问题转换为他的子问题,而他的子问题又转化为子问题;  * 而且我们发现这些问题都有一个模型:存在相同的逻辑归纳处理项。  * 当然也有一个例外:递归结束处的处理方法不适用于这个模型。  *
递归的一些理解
递归,简单点就是快速找到终止条件,然后由终止条件倒过来推运行过程 理论上上就是压栈和出栈的过程
java中递归算法的理解
Coding多了,递归算法是非常常见的,最近我一直在做树形结构的封装,所以更加的离不开递归算法。所以今天就简单说一下这个递归算法,用java实现一个非常经典的递归实例。           递归算法,其实说白了,就是程序的自身调用。它表现在一段程序中往往会遇到调用自身的那样一种coding策略,这样我们就可以利用大道至简的思想,把一个大的复杂的问题层层转换为一个小的和原问题相似的问题来
PHP 递归简单了解
初学php的时候,刚刚认识递归。然后对他进行了小小的总结。适用于小小白 <?php //1.一个多维数组,单元为数字的变成两倍 //如:array(1, 2, 'b', array(3, 'c', array(4, 5))); 中数字变成两倍 function arr($arr){ foreach ($arr as $key => $value) { if (is_integer
php递归函数的理解
很多同学在学习递归函数的时候会感到头晕,无法搞清楚递归函数的原理和运行机制,本文将给大家详细讲解递归函数的运行机制和运用。那什么是递归函数呢?递归函数即为自调用函数,在函数体内直接或间接自己调用自己,但需要设置自调用的条件,若满足条件,则调用函数本身,若不满足则终止本函数的自调用,然后把目前流程的主控权交回给上一层函数来执行,可能这样给大家讲解,还是很难明白。好,那下面我们就拿高洛峰老师的《细说PH
递归函数其实不难理解
递归函数就是直接或者间接的调用自己本身。比如: #include #include void fun() { fun(); //调用自己 } int main() { fun(); system("pause"); return 0; } 但是这个程序运行起来后会怎样呢? 这就是因为刚刚使用的递归不能停止调用自己本身,每次在调用的时候在栈上都要开辟空间,作为函数运行时堆栈
关闭