共查询到20条相似文献,搜索用时 15 毫秒
1.
廖常武 《计算机工程与设计》2006,27(12):2285-2287
针对单处理器后序遍历二叉树的时间复杂度为O(n)问题,提出了在EREW PRAM并行计算模型下一种后序遍历二叉树的算法。将后序遍历二叉树的边构造一个单链表,使用指针跳越技术对单链表进行表序问题求解,从而得到后序遍历二叉树结点的顺序。得出了运用该算法将时间复杂度从O(n)减少到O(logn)的结论。 相似文献
2.
结合教学中学生难以理解与掌握中序遍历二叉树这一实际情况,本文提出利用下压法进行二叉树的中序遍历,同时,利用栈的思想推导中序遍历二叉树的递归算法和非递归算法,清晰直观,便于学生更好的学习与理解。 相似文献
3.
二叉树后序遍历的非递归算法 总被引:1,自引:0,他引:1
从示范二叉树的后序遍历入手,得出二叉树后序遍历递归算法的执行过程以及工作栈的变化情况,从中分析与总结,得出二又树后序遍历的实质.从对二叉树后序遍历实质的进一步分析,得出两个特征,其一,当栈指针为空时,判断其是左子树还是右子树,来做出不同的处理;其二,从出栈结点是第一次出栈还是第二次出栈来决定是否访问该结点.从而得出二叉树后序遍历的两种非递归算法.最后,通过分析,对第二种算法再进行改进. 相似文献
4.
二叉树的先序遍历和中序遍历的非递归算法 总被引:2,自引:0,他引:2
从二叉树先序遍历递归算法的执行过程的分析入手,总结出二叉树先序遍历的实质,从而得出利用栈的二叉树的非递归算法。最后,再从分析二叉树中序遍历与先序遍历过程实质的不同之处,得出了二叉树中序遍历的非递归算法。重点在于对二叉树先序和中序遍历过程实质的分析。 相似文献
5.
6.
7.
后序遍历二叉树非递归算法的推导及形式化证明 总被引:2,自引:0,他引:2
开发涉及非线性数据结构算法程序的循环不变式一直是形式化方法的难点。本文使用PAR方法开发循环不变式的新策略,对后序遍历二叉树问题循环不变式的开发使用递归定义技术,得到了该问题循环不变式的简单精确的表达形式,简化了算法程序的推导和证明过程;利用PAR平台提供的抽象程序设计语言Ap1a中的数据抽象机制,使所得的算法程序结构简洁清晰且易于证明;最后,使用Dijkstra-Gries标准程序证明法形式证明了该问题的核心算法程序(只有4行代码),并使用PAR平台将Apla程序转换成正确的C++代码。实例的成功进一步说明PAR方法提供的循环不变式的开发技术对推导和证明非线性数据结构算法程序的有效性。 相似文献
8.
在计算机科学与工程中,二叉树是一类十分重要的数据结构,有着广泛的应用。本文介绍二叉树的主要操作:遍历二叉树,和遍历算法;对于后序遍历,提出一种新的改进的非递归算法。传统的后序遍历非递归算法,需要为二叉树的结点建立标志位,用以判断该结点是否应进行访问。标志位随同结点的指针一起存入栈中。标志位的使用无疑增加了存贮空间。我们提出的改进算法,无须为二叉树的结点建立标志位,从而节省了存贮空间,但并不增加算法的时间复杂度。算法中所采用的思想与技巧亦可以推广应用到一般树(多叉树)的遍历算法中。 相似文献
9.
全国计算机等级三级数据库技术考试大纲,对数据结构与算法的要求是数据结构、算法的基本概念;线性表的定义、存储和运算;树形结构的定义、存储和运算;排序的基本概念和排序方法;检索的基本概念和检索算法。本文针对二叉树的遍历列举了一些应用实例,希望对参加数据库技术考试的考生有所帮助。 相似文献
10.
以二叉树的后序遍历为例,对后序遍历递归算法的实现过程进行了详细分析。对二叉树后序遍历非递归算法的设计与实现也进行了讲述,并以图的形式对一棵二叉树的后序遍历非递归算法中栈的变化过程做了详细的描述。 相似文献
11.
二叉树遍历的非递归算法 总被引:2,自引:0,他引:2
本文对<数据结构>课程的重点和难点内容之一:二叉树遍历的非递归算法进行了研究,提出了一个系统化公式化的解决方案,并给出了用C 语言描述的先序、中序和后序遍历非递归算法的具体实现. 相似文献
12.
SHENG Kui 《数字社区&智能家居》2008,(23)
通过对同一棵二叉树的前序遍历、中序遍历、后序遍历及层次遍历得到四个不同序列的分析,概括出二叉树的前序遍历、中序遍历、后序遍历及层次遍历序列间的关系,确定对应的二叉树。 相似文献
13.
基于遍历序列的唯一确定树或二叉树的方法 总被引:5,自引:0,他引:5
唐自立 《小型微型计算机系统》2001,22(8):985-988
基于遍历序列的唯一确定树或二叉树的方法既体现了树或二叉村的遍历序列的部分性质,又是建立树或二叉村的存储结构的主要依据,本文首先介绍了由一棵二叉树的某两种遍历序列或某种遍历序列和结点的某种信息可以唯一确定该二叉树的各种可能方法,然后分别针对树、严格二叉树与雨季叉排序树加以介绍,本文比较全面的介绍了基于遍历离列的唯一确定树或二叉树的方法,进一步完善了树或二叉树的遍历序列的性质。 相似文献
14.
提出了一种反向Hash链遍历的时间、空间复杂度优化算法.采用堆栈操作实现了高效的反向Hash链遍历,并将Hash链遍历过程映射到了二叉树的后序遍历过程,利用二叉树性质对存储和计算性能进行了理论化分析和证明.分析证明结果表明,遍历对长为n的反向Hash链时,算法只需要存储「lb n+1个节点值,并且进行不多于(「lb n/2 + 1)n次Hash计算次数.相比同类其他算法,该算法并不要求链长为2的整数次方.通过对算法进行基于k叉树(k≥3)的扩展,进一步将存储空间降低到「log\\-k[(k-1)n+1],但总计算次数提高到[(「log\\-k[(k-1)n+1]-1)k/2+1]n;通过在算法执行前先把Hash链平分为p段(p≥2),将总计算次数降低到(「lb(n/p)/2 + 1)n,但是所需的存储空间提高到(「lb(n/p)+1)p. 相似文献
15.
建立与遍历一棵二叉树历来为数据结构中不可缺少的内容.由于C语言仅有单向的"值传递",所以多年来数据结构皆使用指针函数来编程,进而增加了复杂性.本文了构造一个用递归函数建立二叉树的C语言程序,使实参不仅传递数值还可以传递其地址. 相似文献
16.
二叉树作为数据结构中的一个重要的部分,有着广泛的应用,其中二叉树的遍历是二叉树操作的根本。文中通过分析二叉树的中序遍历过程,结合栈的先进后出特点,归纳出二叉树的中序遍历非递归算法。 相似文献
17.
本文以二叉排序树的建立及对其进行中序遍历的算法为例,介绍了讲解数据结构课程的一种教学手段:利用Turboc图形处理功能动态显示算法的执行过程。通过直观的显示使原本抽象的知识、不易理解的算法变的易于接受.提高了教学效果。 相似文献
18.
本文从学生对"数据结构"课程教学中二叉树遍历这一知识点不易理解的问题出发,提出一种解决的方法—拆分法,通过对拆分法的基本原理和讲授方式的探讨,使学生产生兴趣并提高该知识点的课堂教学效果。 相似文献
19.
二叉排序树的建立及对其中序遍历的动态模拟 总被引:1,自引:0,他引:1
本文以二叉排序树的建立及对其进行中序遍历的算法为例,介绍了讲解数据结构课程的一种教学手段:利用TurboC图形处理功能动态显示算法的执行过程。通过直观的显示使原本抽象的知识、不易理解的算法变的易于接受,提高了教学效果。 相似文献
20.
本文在分析传统线索二叉树的基础上,提出了一种新的线索二又树,它比传统的先序和后序线索二叉树更优越.在进行先序和后序遍历时,如同对线性链表操作。非常简单。 相似文献