二叉树遍历相关¶
关于二叉树的四种遍历方式(非递归):¶
中序遍历(InOrder):¶
前序遍历¶
后序遍历(PostOrderTraversal):¶
- 对于后序遍历,访问顺序依次为 左 、右 、 根 。如果我们对左右子树看反再倒序,会发现跟前序遍历是一样的。所以这里的操作可以选择采用前序遍历,并且第二层while里面是访问到右节点末端,取得一个res数组。最后利用栈或者
reverse函数翻转数组即可。但这种不符合后序遍历的实际含义。下文会给出具体代码:
层次遍历(levelOrder):¶
二叉树遍历的三种递归实现¶
- 对于递归实现,较为简单且代码量较少