树和森林的遍历
来源:互联网 发布:dreamweaver mac 2017 编辑:程序博客网 时间:2024/04/28 20:46
树和森林的遍历
树的遍历
设树T如下图所示,结点R是根,根的子树从左到右依次为T1,T2,…,Tk。
1.树T的前序遍历定义:
若树T非空,则:
①访问根结点R;
②依次前序遍历根R的各子树T1,T2,…,Tk。
2.树的后序遍历定义:
若树T非空,则:
①依次后序遍历根T的各子树Tl,T2,…,Tk;
②访问根结点R。
【例】对下面的(a)图中的树进行前序遍历和后序遍历,得到的前序序列和后序序列分别是ABCDE和BDCEA。
注意:
① 前序遍历一棵树恰好等价于前序遍历该树对应的二叉树
② 后序遍历树恰好等价于中序遍历该树对应的二叉树。
森林的两种遍历方法
1.前序遍历森林
若森林非空,则:
①访问森林中第一棵树的根结点;
②前序遍历第一棵树中根结点的各子树所构成的森林
③前序遍历除第一棵树外其它树构成的森林。
2.后序遍历森林
若森林非空,则:
①后序遍历森林中第一棵树的根结点的各子树所构成的森林;
②访问第一棵树的根结点;
③后序遍历除第一棵树外其它树构成的森林。
注意:
① 前序遍历森林等同于前序遍历该森林对应的二叉树
② 后序遍历森林等同于中序遍历该森林对应的二叉树
【例】对下面(a)图中所示的森林进行前序遍历和后序遍历,则得到该森林的前序序列和后序序列分别为ABCDEFICJH和BDCAIFJGHE。而(b)图所示二叉树的前序序列和中序序列也分别为ABCDEFICJH和BDCAIFJGHE。
③ 当用二叉链表作树和森林的存储结构时,树和森林的前序遍历和后遍历,可用二叉树的前序遍历和中序遍历算法来实现。
1 0
- 树和森林的遍历
- 树和森林的遍历
- 树和森林的遍历
- 6.4.3树和森林的遍历
- 二叉树、树和森林的遍历和转换
- 数据结构——树和森林的遍历方法
- 数据结构 - 树和森林表示与遍历
- 普通树(非二叉树)和森林的深度优先遍历和广度优先遍历说明
- 为什么普通树没有中序遍历和森林没有后序遍历的自己见解
- 11.16数据结构-----树森林的遍历
- 森林的遍历
- 森林的遍历
- 树和森林的储存
- 树和森林的周游
- 树和森林的转换
- 树和森林的区别
- 树、森林与二叉树(树的存储结构(树的孩子兄弟链表应用举例),树转换为二叉树,二叉树转换成树和森林,树和森林的遍历)
- 树、森林与二叉树的转换及遍历
- 69. Sqrt(x)
- 阿里钉钉和企业微信铺天盖地,大象盯盯专注产品,还有前途吗?
- 【华为OJ】【006-质数因子】
- Xcode的playground中对于SpriteKit物理对象的更新为何无效
- Java锁----Lock实现原理
- 树和森林的遍历
- Docker--image分析
- 服务器配置查看
- spring简单入门示例
- Kubernetes1.2如何使用iptables
- 焦点图效果 【jquery】
- 酱爆鸡丁
- 如何选择合适的PHP开发框架
- secureCRT学习总结