⼆叉树的三种遍历
1.先序遍历:按照根节点->左⼦树->右⼦树的顺序访问⼆叉树
先序遍历:(1)访问根节点;(2)采⽤先序递归遍历左⼦树;(3)采⽤先序递归遍历右⼦树;
(注:每个节点的分⽀都遵循上述的访问顺序,体现“递归调⽤”)
先序遍历结果:A BDFE CGHI
思维过程:(1)先访问根节点A,
(2)A分为左右两个⼦树,因为是递归调⽤,所以左⼦树也遵循“先根节点-再左-再右”的顺序,所以访问B节点,(3)然后访问D节点,
(4)访问F节点的时候有分⽀,同样遵循“先根节点-再左--再右”的顺序,
(5)访问E节点,此时左边的⼤的⼦树已经访问完毕,
(6)然后遵循最后访问右⼦树的顺序,访问右边⼤的⼦树,右边⼤⼦树同样先访问根节点C,
(7)访问左⼦树G,
(8)因为G的左⼦树没有,所以接下俩访问G的右⼦树H,
(9)最后访问C的右⼦树I
2.中序遍历:按照左⼦树->根节点->右⼦树的顺序访问
二叉树的遍历及应用实验报告中序遍历:(1)采⽤中序遍历左⼦树;(2)访问根节点;(3)采⽤中序遍历右⼦树
中序遍历结果:DBEF A GHCI
3.后序遍历:按照左⼦树->右⼦树-->根节点的顺序访问
后序遍历:(1)采⽤后序递归遍历左⼦树;(2)采⽤后序递归遍历右⼦树;(3)访问根节点;
后序遍历的结果:DEFB HGIC A
⼩结:三种⽅法遍历过程中经过节点的路线⼀样;只是访问各个节点的时机不同,递归算法主要使⽤堆栈来实现
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论