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
匿名用户不能发表回复!
其他相关推荐
递归函数的理解 (三种类型)
函数的递归调用 递归问题是一个说简单也简单,说难也有点难理解的问题.我想非常有必要对其做一个总结. 首先理解一下递归的定义,递归就是直接或间接的调用自身.而至于什么时候要用到递归,递归和非递归又有那些区别?又是一个不太容易掌握的问题,更难的是对于递归调用的理解.下面我们就从程序+图形的角度对递归做一个全面的阐述. 我们从常见到的递归问题开始: 1 阶层函数 #include iostre
到底如何理解递归?
学习递归是从汉诺塔问题开始接触并展开的,但是从汉诺塔问题就无法理解透彻,书中介绍的以压栈弹栈的解决方法一步步演示汉诺塔问题,但是虽然图画的很细致基本上每一步骤都画出来了但是光是返还时的地址就搞晕了头,看了快十几遍都是到后来找错返还地址,然后上网查找资料尝试理解 假设前n-1次都已经完成了递归,再这最后一次完成递归 的思想,理解多多少少理解了,但是也是在看到代码的情况下才能大概 根据刚刚讲的想法强行
递归函数其实不难理解
递归函数就是直接或者间接的调用自己本身。比如: #include #include void fun() { fun(); //调用自己 } int main() { fun(); system("pause"); return 0; } 但是这个程序运行起来后会怎样呢? 这就是因为刚刚使用的递归不能停止调用自己本身,每次在调用的时候在栈上都要开辟空间,作为函数运行时堆栈
递归程序的理解
递归是c语言里面一个很重要的知识点,它的引入可以实际解决一些普通算法不好解决的问题,比如汉诺塔,迷宫等一些涉及回溯的问题用递归就很容易解决,写出的程序较简短。然而程序的简短是以花费较多的机器时间和占用较多的内存空间为代价的,效率较低,在我们学c和数据结构的时候,里面的程序递归算法通常要比非递归算法效率低 ,起码我还没见过高的,哪位达人给我举个反例出来。其实学习递归就像学程序一样,一个就是会读递
Java 递归的理解
在平常的开发中经常使用递归算法,可能由于项目的关系,或者时间的关系,亦或者压根就没有刨根问底的想法,平时用了也就用了,也没有去深入的研究它的运行原理,今天在开发中跟踪问题时发现了一个现象,所以便产生了一个疑问?Java中递归的算法到底是并行的还是串行的?在回答这个之前先了解递归的含义;什么是递归:递归二字顾名思义就是:递过去,归回来。所以我索性叫它做有借有还吧!凭借着自我认知第一映像应该是并行的,...
彻底理解递归,从递归的本质说起!
遍历二叉树,是学习树这种数据结构首先要理解的一种基本操作。比较简单地方式就是用递归去遍历,鉴于递归这种调用方法有一定的特殊性,今天还是想来讲讲怎么去理解递归遍历。本文针对想理解递归的过程的朋友,因为本人在学到这一部分的时候也纠结了很久,其实只要理解了过程,那以后写递归的代码再也不用“心虚”了,因为那个过程是可预测的,可证明的。递归调用的特殊性在于自己调用自己,给人一种迷茫感,如果是递归调用“一次”...
java中递归算法的理解
Coding多了,递归算法是非常常见的,最近我一直在做树形结构的封装,所以更加的离不开递归算法。所以今天就简单说一下这个递归算法,用java实现一个非常经典的递归实例。           递归算法,其实说白了,就是程序的自身调用。它表现在一段程序中往往会遇到调用自身的那样一种coding策略,这样我们就可以利用大道至简的思想,把一个大的复杂的问题层层转换为一个小的和原问题相似的问题来
php递归函数的理解
很多同学在学习递归函数的时候会感到头晕,无法搞清楚递归函数的原理和运行机制,本文将给大家详细讲解递归函数的运行机制和运用。那什么是递归函数呢?递归函数即为自调用函数,在函数体内直接或间接自己调用自己,但需要设置自调用的条件,若满足条件,则调用函数本身,若不满足则终止本函数的自调用,然后把目前流程的主控权交回给上一层函数来执行,可能这样给大家讲解,还是很难明白。好,那下面我们就拿高洛峰老师的《细说PH
快速排序算法的递归实现的个人理解
快速排序算法的递归实现的个人理解     关于快速排序,该算法实现原理是将要排序的一组数据根据一个被选中的数据,以这个数据为中心将数据分成两侧,一侧大一侧小,使用递归,将分好的两组数据分别进行再次分组,直至不能再分,这时排序则排序完毕。    &am
关于递归实现过程的详解
最近在学数据结构的时候,碰到了递归,但由于自己一直对递归一知半解,所以不能全面的理解递归的过程到底是怎样实现的,下来研究了一下,觉得还是有所收获的。  假设我们用递归实现一个数的阶乘。int fun(int n) { if(n == 0) return 1; else return n*fun(n-1); }这里递归调用的过程为: 递归调用 其实就是函数的调用而已,只不过这
关闭
关闭