首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 15 毫秒
1.
描述递归算法的有效工具——递归树   总被引:2,自引:0,他引:2  
通过分析具体问题,抓住扩展条件和回溯条件两个关键点,画出递归树,由递归树写出相应的递归算法。  相似文献   

2.
基于递归树的递归调用分析   总被引:1,自引:0,他引:1  
提出一种基于递归树的递归调用分析方法。通过建立子递归调用与树节点的映射关系,设计了创建递归树的递归算法。研究了观察点与递归树遍历序列的关系,提出了"遍历序列-观察点-递归调用映射规则"。实现了递归树的创建及遍历,并基于STL和boost库定义了一组分析工具。  相似文献   

3.
递归树由Meir和Moon定义作平面树的一种 ,并且所有节点出度都是允许的。在这篇文章中称递归树的伴随矩阵为递归矩阵 ,通过对递归矩阵的讨论 ,我们得到了递归矩阵的计数公式 ,不但照应递归树的计数公式[2 ] ,而且证明简易 ;导出了递归树矩阵最大密度指数集I(A(Tn) ) ={ 1,2 ,4 ,… ,2k ,… }以及最大密度数μ(A(Tn) ) =n22 ,n =2k ,(k≥ 1)n2 + 12 ,n =2k + 1。 (k≥ 1)进而推广到森林矩阵  相似文献   

4.
递归树由Meir和Moon定义作平面树的一种,并且所有节点出度都是允许的。在这篇文章中称递归树的伴随矩阵为递归矩阵,通过对递归矩阵的讨论,我们得到了递归矩阵的计数公式,不但照应递归树的计数公式[2],而且证明简易;导出了递归树矩阵最大密度指数集I(A(Tn))={1,2,4,…,2k,…}以及最大密度数μ(A(Tn))={n^2/n,n=2k,(k≥1);n^2 1/2,n=2k a.(k≥1)进而推广到森林矩阵。  相似文献   

5.
本文从递归算法的外在形式出发,将递归算法划分为三种情形,依递归算法的执行情况,得出递归算法的非递归化的策略:递归调用在算法尾部(返回语句除外)的情形,从上而下地递归到底,找到递归的终止条件,然后从下而上地用循环实现递归算法的非递归化;递归调用在中间时,依递归算法的执行情况,利用堆栈进行现场的保护与恢复,从而实现递归算法的非递归化;递归调用在中间的特殊情形,依递归算法的执行,将其转化为递归调用在尾部的情形。  相似文献   

6.
递归算法结构简单、清晰,可读性好,且易于验证其正确性,但浪费空间且执行效率低。因此,有时需要把递归算法转换成非递归算法。本文给出几种递归算法的特点及相应非递归算法实现的方法。  相似文献   

7.
数据结构中递归算法实验教学的探讨   总被引:1,自引:0,他引:1  
邓鹰 《怀化学院学报》2004,23(2):132-134
讨论递归算法实验教学的两个问题 问题Ⅰ :先依据有关数学原理写出数递推等式 ,再根据常系数递推等式编写递归算法 ,从而使学生容易掌握递归算法的设计 问题Ⅱ :引入递归状态树 ,使得递归错综复杂的调用关系变得清晰、明了 ,从而使学生更容易分析递归算法的执行过程  相似文献   

8.
本系统论述能够用递归算法解决的问题应具备的条件、递归子程序结构、递归子程序调用过程与参数传递。最后讨论递归算法与其他算法的比较及它的应用。  相似文献   

9.
对递归程序的非递归作了较为深入的研究,给出了直接递归程序的非递归模板,提出了一个既适于直接递归程序,也适于间接递归程序的一般转化规则,并结合实例讨论了三类特殊情况下的递归转化方法。  相似文献   

10.
递归在计算机科学和教学中都是一个重要的问题求解工具。利用递归算法可以用有限的语句来定义无限的集合,但在递归定义中必须有递归步骤的至少要有一条非递归的终止条件。在程序设计语言中,递归有多个应用,对于满足特定条件的某些问题,恰当地使用递归算法能使程序简捷、清晰易读,其结构也比较简练。  相似文献   

11.
本文分析了程序设计中递归算法执行速度慢的原因,提出了递归算法的非递归技术,此法计算速度很快,通用性较强,可用于改造一切使用递归方法设计的程序。  相似文献   

12.
递归在计算机科学和教学中都是一个重要的问题求解工具。利用递归算法可以用有限的语句来定义无限的集合,但在递归定义中必须有递归步骤的至少要有一条非递归的终止条件。在程序设计语言中,递归有多个应用,对于满足特定条件的某些问题,恰当地使用递归算法能使程序简捷、清晰易读,其结构也比较简练。  相似文献   

13.
<正>递归是计算机科学中极为重要的概念,递归调用技术在数据结构中获得了广泛的应用,所以对递归的研究是计算机科学领域中的重要课题.目前,国内文献对其技术和实现由递归往非递归算法的转化都有大量的介绍,对于由非递归往递归算法的转化较少.本文就此讨论了非递归算法的重要性和到递归算法的转换主要解决方法.1 递归和非递归问题一个对象部分地由自己组成或按它自己定义的则称为递归的.递归在自然界是经常要遇到的,众所周知,递归程序设计方法和实际问题的自然表达式相近,又特别符合于人们的思想习惯,具有容易设计,程序清晰易读等优点.因此,在程序设计中使用递归是十分有用的工具.  相似文献   

14.
递归是解决实际工程问题中常用的工具,但其在执行时具有空间耗费大、效率低的不足.给出了递归借助堆栈的实现过程,针对其不足提出了改进的方法——向非递归的转化.  相似文献   

15.
栈与递归     
递归是计算机科学中一个极为重要的概念,许多计算机高级语言都具有递归的功能,对于初学计算机者来讲,递归是一个简单易懂的概念,但真正深刻理解递归,正确自如的运用递归编写程序却非易事,本文通过一些实例来阐述递归在计算机内的实现及递归到非递归的转换,也许使读者能加深对递归的理解  相似文献   

16.
递归调用是程序设计中一个非常重要的方法。本文对程序算法的递归调用及递归调用与非递归调用的转化从基本定义、实现过程及转化方法等几个方面进行了理论探讨,并结合实例做了进一步应用分析。此法简单直观,结构清晰,但计算机的执行过程比较复杂,时空性能相对较差。若在程序中消除递归调用,则其运行时间可大为节省。  相似文献   

17.
黄津津 《教育探索》2008,(11):69-70
递归是计算机科学的一个重要概念,递归算法是程序设计中经常采用和有效的编程方法。用递归设计的程序结构比较简洁和清晰,但递归算法是较难理解和掌握的,因此,对递归算法的概念及结构进行深入分析,给出递归算法的设计方法,并通过对递归算法的内部实现过程的描述,可以帮助学生正确理解和应用递归算法解决实际问题。  相似文献   

18.
探讨了实现递归算法替换非递归算法的多种方法。对于那些不支持递归的程序设计语言(如Fortran语言),通过采用这些方法,不仅为递归问题的非递归化找到了一些有效的解决途径。而且提高了程序的执行效率。  相似文献   

19.
递归调用是程序设计中一个非常重要的方法。本文对程序算法的递归调用及递归调用与非递归调用的转化从基本定义、实现过程及转化方法等几个方面进行了理论探讨,并结合实例做了进一步应用分析。此法简单直观,结构清晰.但计算机的执行过程比较复杂,时空性能相对较差。若在程序中消除递归调用,则其运行时间可大为节省。  相似文献   

20.
从数学角度讨论了递归程序的性质和特点,以及编写递归程序的一个简单方法,并通过实例加以详细的说明,另外对递归程序的收敛条件进行了初步探讨.  相似文献   

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

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