[软考]之树与二叉树的遍历

简介: [软考]之树与二叉树的遍历

上一篇博客我们讲解了树与二叉树的组成等规则,这篇博客我们来说一下树和二叉树的遍历问题。


什么是树,二叉树?


   对于这个还不清楚的可以去看我的上一篇博客:[软考]之树和二叉树下面咱们直接来看一张树和二叉树的图。二叉树只是树的一种特殊形式,即每个根只有至多两个子树,当然如果愿意,你也可以自己定义三叉树,四叉树。。。。。



树的遍历


首先应该知道,树的遍历有三种:先序遍历、后序遍历、层次遍历。二叉树的遍历与树的遍历相同,但是多了一种中序遍历(相当于广度优先遍历),下面咱们以上图为例来讲解如何进行树和二叉树的遍历。


先序遍历


先序遍历的顺序是根、左、右,对于任一子树,都按照根、左、右的顺序来遍历,下面来遍历咱们的图:


树:A B E F C D G I H


二叉树:A B D H I E C F G


后序遍历


后序遍历的顺序是左、右、根,对于任一子树,都按照左、右、根的顺序来遍历,下面看咱们图的遍历:


树:E F B C I G H D A


二叉树:H I D E B F G C A


层次遍历


层次遍历的顺序是按照顺序,一层一层的进行遍历,这个比较简单,直接上结果:


树:A B C D E F G H I


二叉树:A B C D E F G H I


最后这个中序遍历对于二叉树才有意义,树的遍历用不到这个,因为树的子树可能不止两个,可能有很多个,大家注意一下。


中序遍历


中序遍历的顺序是左、根、右,对于任一子树,都按照左、根、右的顺序来遍历,下面看看咱们的遍历:


树:无


二叉树:H D I B E A F C G


以上就是树和二叉树的遍历,对于前三种,其实树和二叉树的遍历是一样的,只有中序遍历是二叉树有而树所没有的。对于二叉树地先中后遍历来说,其实都是指根的位置,比如先:根左右,中:左根右,后:左右根,是不是超级简单了!


目录
相关文章
|
14天前
|
算法
讲课:拓扑排序、最短路算法
讲课:拓扑排序、最短路算法
|
14天前
|
存储 人工智能 算法
蓝桥杯省赛冲刺(3)广度优先搜索
蓝桥杯省赛冲刺(3)广度优先搜索
20 0
|
14天前
|
算法
数据结构与算法之树
红黑树 1.如果一个树要是红黑树,那么这个树首先就要满足平衡二叉树的性质。
39 1
|
9月前
两道智力题
两道智力题
|
9月前
|
算法 程序员
程序员怎能不会二叉树系列(一)简单了解二叉树
程序员怎能不会二叉树系列(一)简单了解二叉树
|
11月前
[软考]之树和二叉树
[软考]之树和二叉树
58 0
|
存储
广度优先搜索练习感想
广度优先搜索练习感想
|
算法
算法竞赛题解:校门外的树
NOIP2005 普及组:校门外的树
206 0
|
算法
初级算法之树
树比链表稍微复杂,因为链表是线性数据结构,而树不是。 树的问题可以由 广度优先搜索 或 深度优先搜索 解决。 在本章节中,我们提供了一个对于练习 广度优先遍历 很好的题目。 我们推荐以下题目: 二叉树的最大深度,验证二叉搜索树,二叉树的层次遍历 和 将有序数组转换为二叉搜索树。 剑指 Offer 55 - I. 二叉树的深度 输入一棵二叉树的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含根、叶节点)形成树的一条路径,最长路径的长度为树的深度。 递归法: class Solution { public int maxDepth(TreeNode root) {
37 0

热门文章

最新文章