二叉树的遍历规则有 层级遍历,先序遍历,中序遍历,后续遍历。
> “先中后”是 根节点 相对 左右节点 的位置。
![](https://box.kancloud.cn/144baba948d551e3f30b38ae6b7416da_237x322.png)
* 广度优先
1. 层级遍历
* 从根向下遍历
* 遍历顺序:EBFADHCGIKJ
* 深度优先
1. 先序遍历
* 根节点 -> 左节点 -> 右节点
* EBADCFHGIKJ
2. 中序遍历
* 左节点 -> 根节点 -> 右节点
* ABCDEFGHIJK
3. 后续遍历
* 左节点 -> 右节点 -> 根节点
* ACDBGJKIHFE
```
//后续遍历
public function back_order($root)
{
if (!is_null($root)) {
$function = __FUNCTION__;
$this->$function($root->left);
$this->$function($root->right);
echo $root;
}
}
```