利用递归实现二叉树的先序,中序,后序遍历操作
/* 先序、中序、后序递归遍历二叉树算法 */ void PreOrder(BiTree T) //先序遍历 { if(T != NULL) { visit(T); //访问根节点 PreOrder(T -> lchild); //递归遍历左子数 PreOrder(T -> rchild); //递归遍历右子数 } } void InOrder(BiTree T) //中序遍历 { if(T != NULL) { InOrder(T -> lchild); visit(T); InOrder(T -> rchild); } } void PostOrder(BiTree T) //后序遍历 { if(T != NULL) { PostOrder(T -> lchild); PostOrder(T -> rchild); visit(T); } }
利用栈实现二叉树的先序,中序,后序遍历的非递归操作
/* 先序、中序、后序非递归遍历二叉树算法 */ void PreOrder(BiTree T) { InitStack(s); BiTree p = T; while(p || !IsEmpty(S)) { while(p) { visit(p); push(S, p); p = p -> lchild; } if(IsEmpty(S)) { p = Pop(S); p = p -> rchild; } } } void InOrder(BiTree T) { InitStack(S); BiTree p = T; while(p || !IsEmpty(S)) { if(p) { Push(S, p); p = p -> lchild; } else { Pop(S, p); visit(p); p = p -> rchild; } } } void PostOrder(BiTree T) { InitStack(S); BiTree p, r; p = T; r = NULL; while(p || !IsEmpty(S)) { if(p) { Push(S, p); p = p -> lchild; } else { GetTop(S, p); if(p -> rchild && p -> rchild != r) { p = p -> rchild; push(S, p); p = p -> lchild; } else { Pop(S, p); visit(p); r = p; p = NULL; } } } }
相关推荐
用C++写的二叉树先序遍历、中序遍历和后序遍历非递归算法
小小学习,C语言数据结构,中序遍历二叉树非递归算法
用C++写的,包括二叉树的构建,二叉树的先序遍历、中序遍历和后序遍历非递归算法。
//二叉树的二叉链表存储表示 typedef struct BiTNode { TElemType data; BiTNode *lchild, *rchild; //左右孩子指针 } BiTNode, *BiTree; typedef struct { BiTree *base; BiTree *top; int stacksize; //当前...
二叉树先序、中序、后序遍历非递归算法,简述了二叉树的基本算法。
后序遍历二叉树非递归算法的推导及形式化证明,难得的期刊论文资料,对研究二叉树的非递归性遍历有很大帮助
非递归中序遍历二叉树(算法2): 层次遍历二叉树: 递归计算单分支结点: 递归计算双分支结点: 递归计算叶子数: 二叉数的深度: 交换二叉树的左右子树: 二叉树已左右交换。 递归先序遍历二叉树: 递归...
编写先序遍历二叉树的非递归算法程序,要求: (1)以二叉链表建立二叉树。 (2)输出遍历的结点序列。 (3)有实例验算。
C语言实现二叉树的前序遍历(非递归),下载下来看看哦!
由先根次序和中跟次序建立二叉树,以及各种遍历的递归、非递归算法
各种遍历二叉树的算法包括非递归,遍历算法对文件目录的管理相当有效
二叉树的中序、前序、后序的递归、非递归遍历算法
二叉树先序、中序、后序遍历(递归、非递归算法) 其中自己已经开发了栈!
数据结构 二叉树三种遍历的非递归算法(背诵版). 数据结构 二叉树三种遍历的非递归算法(背诵版). 数据结构 二叉树三种遍历的非递归算法(背诵版).
按层次遍历二叉树的算法 简单易懂 按层次遍历二叉树的算法 简单易懂
二叉树的非递归遍历,使用C++实现二叉树的非递归遍历,对正在学习算法的同学应该挺有帮助的
经典算法 二叉树非递归遍历算法, 可供大家参考 解决非递归遍历问题
C语言二叉树遍历前序非递归算法,简单易懂,正确无误
这是数据结构中二叉树的后序遍历的非递归算法的源代码。
遍历二叉树 遍历二叉树的先序、中序和非递归遍历二叉树的六种算法