前言
遍历二叉树是二叉树知识中的基础,有递归版本和非递归版本,这里递归的版本比较容易,所以我们只说前序遍历的递归形式,剩下的中序和后序由读者自行实现。本文着重写非递归形式的遍历。除了前中后序遍历外各位也可以自行实现层序遍历(一层一层遍历)。
前序、中序、后序遍历的定义
最简单的理解
- 前序遍历:对于每个节点而言,先输出自身,再输出左子树,最后输出右子树的。(中左右)
- 中序遍历:对于每个节点而言,先输出左子树,再输出自身,再输出右子树。(左中右)
- 后序遍历:对于每个节点而言,先输出右子树,再输出左子树,再输出自身。(右左中)