首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 15 毫秒
1.
擂台赛     
北京8706信箱 1996年第1期 擂台赛讲评 要解决本期擂台赛题目必须用到“函数的递归调用”。此题又称Hanoi(汉诺)塔问题,它是一个典型的利用递归方法解决的问题。所谓递归调用就是在调用函数X的过程中,又要调用X函数,这就是递归调用的一种。下面让我们一起来看一看当A柱上有3个圆盘时的移动情况。  相似文献   

2.
汉诺塔问题的可视化教学演示软件的设计与实现   总被引:1,自引:0,他引:1  
洪歧  魏凡哲 《福建电脑》2011,27(6):37-38
汉诺塔问题是大学计算机专业《数据结构》课程的必讲内容,在教学中用来帮助学生理解程序的递归调用。本文利用非递归算法实现了该问题的的可视化教学演示,以图形形式形象、直观表现问题解决过程。  相似文献   

3.
树是计算机科学中经常用到的一种典型的非线性数据结构。本文介绍一种求解其深度(高度)的非递归算法,同递归算法比较,既易于理解,又解决了某些高级语言因无递归机制而带来的实现上困难。  相似文献   

4.
在智能故障诊断中,C(C )语言具有多方面优于传统人工智能语言(如LISP、PROLOG)的特性,它对递归的支持使得用其来开发故障诊断专家系统成为可能.本文研究了故障诊断专家系统开发中用到的递归方法及其基于C(C )的实现,具体包括:动态数据库设计中结构体的递归定义,推理机设计中函数的递归调用等.针对知识推理中易出现的"循环递归"问题,提出了一种基于"因果网络直观图"的解决方法.  相似文献   

5.
传统的模式合一,使用递归调用的方法,算法的时间复杂度是指数级的,因此,往往容易耗费大量的系统资源,从而造成系统的崩溃。为了解决这个问题,本文提出一种新的模式合一算法,共时间复杂度为线性的。实验结果表明,本算法可以有效地解决原来算法中存在的递归调用问题。  相似文献   

6.
在数据结构中链表的逆序输出都是用非递归算法来实现的,本文中我们将介绍一种实现链表述序输出的新方法──递归方法。  相似文献   

7.
汤震浩  李彬  翟娟  赵建华 《软件学报》2018,29(6):1527-1543
本文提出了一种对递归数据结构的归纳性质进行自动化分析的框架.工作分为三个主要部分.首先,它将递归数据结构的归纳性质分为两个主要类别,并提出对应的处理模式,从而帮助简化对于程序中的递归数据结构上的相关性质的分析.其次,提出了一种称为分割与拼接的技术来发现和描述递归数据结构是如何被程序修改的:递归数据结构首先被分割为若干个互不相交的片段,然后这些片段以新的方式重新拼接在一起,形成一个新的数据结构.这个技术的重点在于如何将程序原有的性质保留下来,从而为后面的分析过程所使用.最后,提出了一种调用上下文敏感的程序摘要过程间分析方法.案例分析和实验结果表明我们的分析框架可以有效地分析递归数据结构的归纳性质,并生成对程序证明过程有用的断言.  相似文献   

8.
在数据结构中键表的逆序输出都是用非递归算法来实现的,本文中我们将介绍一种实现键表逆序输出的瓣方法---递归方法。  相似文献   

9.
孔明棋是一种玩法简单,但其中变化无数的益智游戏。对孔明棋求解问题进行分析,提出了基于回溯思想的递归和非递归算法,运行结果表明了算法的有效性。文章还围绕栈在存储数据、消解递归等方面的应用对两个算法的优缺点进行了比较分析,递归算法结构清晰,但递归调用次数多;而非递归算法借助程序栈,将程序向循环转化,降低了时间复杂度,但算法难以分析和理解。因此在求解实际问题时可以采用递归思想来分析,然后借助栈用非递归来实现算法。  相似文献   

10.
闫林 《微机发展》1997,7(4):6-8
归纳定义是定义某些概念时常用到的一种定义方法,但是,什么叫做“归纳定义”并没有严格的说法,本文从代数系统的观点出发,对归纳定义进行了严格的数学定义。递归算法是编程时经常使用的一种算法设计方法,其思想就是算法本身调用自己。本文对归纳定义与递归算法之间的联系进行了深入的讨论和研究,结论是:利用归纳定义所定义的概念一定可以利用递归算法进行判定;反之,由递归算法可以判定的概念一定能够进行归纳定义。  相似文献   

11.
在程序设计中,递归调用是一种重要的特殊的设计方法,而栈又是数据结构中很重要的一种数据结构,本文通过对递归和栈的简单讨论,进而发掘出它们之间的内在联系,更好的掌握递归,以便设计出更高效的程序。  相似文献   

12.
KMP算法中next数组的计算方法研究   总被引:2,自引:1,他引:1  
next数组的计算方法是KMP(Knuth-Morris-Pratt)算法的难点和核心.当前数据结构教材中普遍采用递推的方式来计算next数组值.文中给出一种新的采用递归思想设计的计算next数组的算法;并对当前数据结构教材中对next数组定义的其它一些改进方式进行了讨论与分析.实验数据表明,递归算法的思想正确;并且,从算法设计上考虑,采用递归方法设计的算法具有思路清晰、易于理解和分析的优点.  相似文献   

13.
八皇后问题的非递归算法设计   总被引:1,自引:0,他引:1  
采用回溯法来解决八皇后问题,用一种较好的数据类型来表示解空间,给出一种逻辑结构非常清晰的非递归算法,解决了递归算法中空间效率低的问题。  相似文献   

14.
递归程序可以嵌套调用,因此在运行过程中其运行轨迹较复杂。本文将用数据结构中的树型结构来形象化描述递归程序运行轨迹,使递归程序的运行轨迹更加清晰明了和易于理解。  相似文献   

15.
洪熹 《福建电脑》2012,28(6):124-126,155
利用递归可完美地解决树型数据结构的许多算法问题,本文对树型数据结构中递归算法的应用和实现进行了较全面的探讨。文中算法采用C/C++言语描述。  相似文献   

16.
递归算法的主要作用是把复杂问题分解为简单问题来求解。对于某些复杂问题(例如hanio塔问题),递归算法是一种自然且合乎逻辑的解决问题的方式,但是递归算法的执行效率通常比较差。因此,在求解某些问题时,常采用递归算法来分析问题,用非递归算法来求解问题;另外,有些程序设计语言不支持递归,这就需要把递归算法转换为非递归算法。  相似文献   

17.
二叉树是数据结构中最常见的一种存储形式,而遍历二叉树又是二叉树中最重要的操作。该文分别以递归和非递归两种不同的算法来分析遍历二叉树的过程,旨在用简单明了的方法来实现二叉树的遍历,且先序、中序、后序三种遍历方式都可通过这两种算法实现。  相似文献   

18.
二叉树是数据结构中最常见的一种存储形式,而遍历二叉树又是二叉树中最重要的操作.该文分别以递归和非递归两种不同的算法来分析遍历二叉树的过程,旨在用简单明了的方法来实现二叉树的遍历,且先序、中序、后序三种遍历方式都可通过这两种算法实现.  相似文献   

19.
递归算法通过直接或间接调用自身算法来进行运算,在程序开发中用于解决大类问题非常有效,能使描述更为简单易懂,不过存在运行效率较低问题。本文在分析递归算法与迭代算法优缺点的基础上,就递归算法在管理系统权限模块中的应用进行了浅要的探讨,有一定的借鉴参考价值。  相似文献   

20.
1.目的和功能 FCY是“XR”(系列软件)的一个成员。可用来写数据结构复杂和要求高精度数值计算的程序。也可用作实现公式处理语言GCY的工具。主要特点如下: (1)是高级语言。有通常高级语言的控制结构和运算表达式。变量类型动态可变,由赋值决定。函数可以递归定义和递归调用。数包  相似文献   

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

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