早教吧作业答案频道 -->其他-->
二叉树遍历结合例子具体讲解例子不能太简单
题目详情
二叉树遍历结合例子具体讲解例子不能太简单
▼优质解答
答案和解析
遍历的方法有:层序遍历、先序遍历、中序遍历、后序遍历等,以下面的二叉树为例介绍遍历
E
/ \
B F
/ \ \
A D H
/ / \
C G I
\
K
/
J
1.层序遍历
即从上到下按层次访问该树,每一层单独输出一行,每一层要求访问的顺序为从左到右。
例子中层序遍历为EBFADHCGIKJ,一层一层从上往下,从左往右输出。
2.先序遍历
遍历顺序是 先根再左子树再右子树,访问根结点的操作发生在遍历其左右子树之前。
我们看例子,首先从根节点E开始,先根输出E,然后左子树B,此时的位置在B,B相当于AD两个结点的根,所以遍历B之后,遍历B的左子树A,A没有孩子结点,所以遍历B的右子树D,D有左子树遍历C,这样完成了E的左子树遍历,再遍历E的右子树F,再遍历F的左子树,这里没有,就遍历F的右子树H,然后再遍历H的左右子树,左子树G,当然G没有孩子结点,所以接下来是I,然后 K J类似。
所以先序遍历是EBADCFHGIKJ,记住一点,访问根结点的操作发生在遍历其左右子树之前,在上面的例子中,访问完E之后访问B,接下来不是访问F,而是访问B的左右子树。
3.中序遍历
先左子树再根再右子树
A
/ \
B C
中序遍历就是 B A C,如果B有左右子树,如下图,再访问B之前先访问B的左子树
A
/ \
B C
/ \
D E
中序遍历为 D B E A C,如果C有右子树没有左子树,如下图则是先访问C再访问F
A
/ \
B C
/ \ \
D E F
最上面提到的例子
E
/ \
B F
/ \ \
A D H
/ / \
C G I
\
K
/
J
中序就是:ABCDEFGHIJK,在访问E的时候,发现E有左子树B,先B,再访问B的时候发现有左子树A,所以肯定还是A先,所以这个序列是从A开始的。
3.后序遍历
其访问顺序是先左再右再根,下面的例子,后序就是BCA
A
/ \
B C
如果B有左右子树,如下图,先访问B的左右子树,再访问B,其后序是DEBCA
A
/ \
B C
/ \
D E
如果C有右子树没有左子树有右子树,再访问C时的右子树F再访问C,其后序是DEBFCA
A
/ \
B C
/ \ \
D E F
最开始提到的例子
E
/ \
B F
/ \ \
A D H
/ / \
C G I
\
K
/
J
后序是ACDBGJKIHFE
E
/ \
B F
/ \ \
A D H
/ / \
C G I
\
K
/
J
1.层序遍历
即从上到下按层次访问该树,每一层单独输出一行,每一层要求访问的顺序为从左到右。
例子中层序遍历为EBFADHCGIKJ,一层一层从上往下,从左往右输出。
2.先序遍历
遍历顺序是 先根再左子树再右子树,访问根结点的操作发生在遍历其左右子树之前。
我们看例子,首先从根节点E开始,先根输出E,然后左子树B,此时的位置在B,B相当于AD两个结点的根,所以遍历B之后,遍历B的左子树A,A没有孩子结点,所以遍历B的右子树D,D有左子树遍历C,这样完成了E的左子树遍历,再遍历E的右子树F,再遍历F的左子树,这里没有,就遍历F的右子树H,然后再遍历H的左右子树,左子树G,当然G没有孩子结点,所以接下来是I,然后 K J类似。
所以先序遍历是EBADCFHGIKJ,记住一点,访问根结点的操作发生在遍历其左右子树之前,在上面的例子中,访问完E之后访问B,接下来不是访问F,而是访问B的左右子树。
3.中序遍历
先左子树再根再右子树
A
/ \
B C
中序遍历就是 B A C,如果B有左右子树,如下图,再访问B之前先访问B的左子树
A
/ \
B C
/ \
D E
中序遍历为 D B E A C,如果C有右子树没有左子树,如下图则是先访问C再访问F
A
/ \
B C
/ \ \
D E F
最上面提到的例子
E
/ \
B F
/ \ \
A D H
/ / \
C G I
\
K
/
J
中序就是:ABCDEFGHIJK,在访问E的时候,发现E有左子树B,先B,再访问B的时候发现有左子树A,所以肯定还是A先,所以这个序列是从A开始的。
3.后序遍历
其访问顺序是先左再右再根,下面的例子,后序就是BCA
A
/ \
B C
如果B有左右子树,如下图,先访问B的左右子树,再访问B,其后序是DEBCA
A
/ \
B C
/ \
D E
如果C有右子树没有左子树有右子树,再访问C时的右子树F再访问C,其后序是DEBFCA
A
/ \
B C
/ \ \
D E F
最开始提到的例子
E
/ \
B F
/ \ \
A D H
/ / \
C G I
\
K
/
J
后序是ACDBGJKIHFE
看了 二叉树遍历结合例子具体讲解例...的网友还看了以下:
急!各位高手帮忙解下英语题还蛮容易的,但有些我忘了(因为不睡觉,所以本人脑子不太好)一、翻译(1) 2020-05-17 …
83HeseemstotoJane.Heknowsherwell.Ahavebeenintrodu 2020-06-03 …
这句话怎么理解?Well,lastnightyouseemedtoknowyourwayaroun 2020-06-14 …
新概念英语2-Lesson1有几个句子不太明白、求解惑、谢谢!1、Ididnotenjoyit.书 2020-06-15 …
初中一题计算题很简单只是我脑子不太好用罢了.[(x+2y)²-(x+y)(x-y)-4y²]÷2y 2020-06-30 …
Nomorechalkandtalkinfrontoftheclassroom.这个句子是正确的吗 2020-07-25 …
向大家请教一道数学题可能晚上就是脑子不太好使算了好几遍数都不一样希望大家能够帮忙解决一下~谢谢了三 2020-08-03 …
语法题.这个句子不太明白__superstitiousbeliesfaboutthemandrake 2020-11-07 …
关于一个短语becarefulof一般跟有生命的东西becarefulwith一般接物体,表示留意. 2020-12-06 …
公司急需用含硫代硫酸钠的无菌取样袋我们公司急需一批含硫代硫无菌取样袋,给分比较少,以后会追加.网络上 2020-12-19 …
相关搜索:二叉树遍历结合例子具体讲解例子不能太简单