首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 0 毫秒
1.
2.
递归算法的非递归实现   总被引:5,自引:0,他引:5  
递归以其算法简单清晰、可读性强及易实现而具有很好的理论,但在实际应用时,递归过程用到的大量数据不管有用无用都需要保存,而当递归层次多到一定程度,将耗尽系统内存资源,因此很少在真正的实际应用中使用,实用性较差。如果可以设计出一种既保持递归算法简单、清晰、易实现的优点,双能避免递归算法极耗内存缺陷的新型递归算法,将是一件十分有意义的事情。  相似文献   

3.
杨明 《微型计算机》1996,16(6):51-52
本文对递归的非递归算法进行了研究,并给出了由递归到递推的抽象算法,并说明了该算法的具体运用。  相似文献   

4.
二叉树遍历的非递归算法   总被引:2,自引:0,他引:2  
本文对<数据结构>课程的重点和难点内容之一:二叉树遍历的非递归算法进行了研究,提出了一个系统化公式化的解决方案,并给出了用C 语言描述的先序、中序和后序遍历非递归算法的具体实现.  相似文献   

5.
该文讨论了递归算法向非递归算法转变的主要几种方法,对一般数据结构教材中介绍的方法进行了总结和补充,帮助对递归难点的学习。  相似文献   

6.
递归算法简单自然、结构清晰、易写易读、易于验证其正确性,但执行效率不高。因此,在程序设计中,通常对所要处理的问题先用递归算法加以描述,然后再将其改写成非递归算法。本文从四个方面论述了递归算法的模拟问题。  相似文献   

7.
一种新的分形树递归算法的研究   总被引:1,自引:0,他引:1  
树木种类繁多,形态各异,在虚拟场景建模中具有广泛的应用,分形递归算法能够比较简单快捷的建立起分形树模型,但现有的分形树递归算法缺乏通用性,针对不同分枝形态的分形树需要建立不同的算法模型。本文对递归算法进行了改进,通过每次产生不同的随机数控制生成多种分枝形态各异的分形树。实验结果表明,该算法具有很好通用性,高效简洁,能生成形态更加丰富自然的分形树。  相似文献   

8.
递归算法的非递归化实现   总被引:14,自引:0,他引:14  
由递归算法直接转换成相应的非递归算法能有效地提高程序的执行效率,本文列出了几类递归算法的非递归化实现方法,分别说明了这几类递归算法的特点及算法实例,并给出了相应的非递归算法。  相似文献   

9.
虽然递归算法具有结构简练、清晰、可读性强等优点,但有时受执行效率和程序设计语言的限制,必须实现递归向非递归的转换.提出一个通用的算法框架实现一般递归算法向非递归算法的转换.该框架产生的非递归算法没有标号,适用于大多数程序设计语言.结合几个典型的实例说明该框架的应用方法和有效性.  相似文献   

10.
提出一种把递归过程转换为非递归过程的方法——递归树法,画出递归过程的递归树,然后通过对递归树的后根序遍历实现递归过程的非递归化,最后通过案例说明该方法的可行性和有效性。  相似文献   

11.
递归算法的非递归化研究   总被引:7,自引:0,他引:7  
孟林 《计算机科学》2001,28(8):96-98
1 引言在工程实际中,有许多概念是用递归来定义的,数学中的许多函数也用递归来表达。一个递归算法的执行过程类似于多个函数的嵌套调用,只是主调函数和被调函数是同一个函数而已,在执行过程中,信息的传递和控制的转移必须通过栈来实现,这就导致空间耗费大,执行效率较低,尤其是当递归深度较深时,不但耗费的空间大而且执行的效率也相当低,这是递归算  相似文献   

12.
二叉树遍历递归算法非递归化的讨论   总被引:3,自引:0,他引:3  
尽管递归算法具有结构简炼、清晰、可读性强等优点,但递归算法在执行过程会耗费太多的时间和空间,为了追求算法的时空效率,必须将递归算法转化为非递化算法,问题才能得到有效解决,本文讨论了在递归算法执行过程中栈的变化和给出了改进的非递归化算法。  相似文献   

13.
高永平  陆玲 《微计算机信息》2006,22(15):266-267
讨论了利用队列来生成二叉链表树的非递归算法,通过借助了二叉树的顺序存储方法以及构建一个临时的队列来实现这个算法,该算法的提出丰富了由递归算法转换成非递归算法的方法。  相似文献   

14.
基于状态机的递归算法非递归化框架   总被引:1,自引:0,他引:1  
由递归程序转换到非递归程序可以避免栈内存溢出问题并可以提高算法效率。借助状态机编程的思想,提出一种递归到非递归转换的框架。将函数的调用和返回过程看作是状态的转换,并将递归过程模拟为"进入函数"、"进入递归点"、"从递归点返回"等状态。实验中,将几种具有代表性的递归算法转换为非递归算法,从转换后代码可以看出,提出的框架与"while-while"和"while-if"等常见框架相比,具有结构清晰、代码简洁和转换过程程序化强的优点。  相似文献   

15.
讨论了利用堆栈来生成二叉链表树的非递归算法.通过仔细分析二叉链表树的递归生成过程,从中找到了二叉树非递归实现的算法,最后应用前序遍历和中序遍历可以惟一确定一棵二叉树的方法来检验生成的二叉树的正确性.分析该算法的实现,有助于我们对它的理解与掌握.  相似文献   

16.
17.
本文将E.M.Reingold和J.S.Tilford的二叉树画树算法推广到m叉树画树算法,并给出了算法的时间复杂度分析和实验结果。  相似文献   

18.
提出了将树结构和数据写入文件及将原树结构和数据进行恢复的一种改进算法,并给出了详细的算法流程和相关图表。  相似文献   

19.
通过对 Hanoi塔问题的研究 ,给出了 Hanoi塔问题的非递归算法的思想和流程图 ,并用不允许递归调用的 BASIC语言实现了 Hanoi塔问题的非递归算法。该算法的优点在于可一次性求得总移动次数 ,但从程序结构看其编程思路较复杂 ,难于理解 ,算法的时间复杂性和空间复杂性与递归算法无异。  相似文献   

20.
关于Hanoi塔问题的非递归算法,已有了大量的研究[1 ̄4]。实验表明,当圆盘数目较少时,现有的非递归算法的执行速度比递归算法要快一些,但是随着圆盘数目的增加,现有的非递归算法的执行速度会逐渐变得比递归算法慢。论文提出了一种基于压缩编码的非递归新算法,在压缩了存储空间的同时,提高了算法的执行速度。实验结果表明,对于任意圆盘数目n,论文所实现的非递归算法的执行速度比现有的递归算法和非递归算法都有成倍的提高。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号