二叉树遍历之中序遍历

二叉树遍历之中序遍历

二叉树的中序遍历与深度优先搜索很类似,对于深度优先算法,我们使用栈(Stack),广度优先搜索使用队列(Queue)。二叉树的中序遍历遵循三个步骤

  1. 遍历左树
  2. 访问根节点
  3. 遍历右数

首先从根节点开始,遍历它的左树。到达节点20,同样查找它的左子树,现在到达11节点,再查找它左边的节点,因为11节点没有左子节点,故返回并打印它的值。下一步我们尝试寻找11的右子树,也是空的。所以我们返回20节点

在这里插入图片描述

Output:11

这时已经遍历完了20节点的左子树,所以我们打印出它的值,然后遍历它的右子树。

Output:11,20

遵循之前的规律,同样的访问29 ,32 节点。

Output:11 , 20 , 29 , 32

当20节点的右子树也遍历完了时,返回41节点。开始遍历它的右子树。重复上述的步骤。
在这里插入图片描述
得到最后的输出为

Output:11 , 20 , 29 , 32,41 , 50 , 65 , 72 , 91 , 99

发布了19 篇原创文章 · 获赞 1 · 访问量 283

猜你喜欢

转载自blog.csdn.net/XSemperFI/article/details/103267315