## 二叉樹的遍歷
二叉樹的遍歷分為三種:前(先)序、中序、后序遍歷。
設L、D、R分別表示二叉樹的左子樹、根結點和遍歷右子樹,則先(根)序遍歷二叉樹的順序是DLR,中(根)序遍歷二叉樹的順序是LDR,后(根)序遍歷二叉樹的順序是LRD。還有按層遍歷二叉樹。這些方法的時間復雜度都是O(n),n為結點個數。
### 前序遍歷
前序遍歷的偽代碼如下:
```js
visit(node)
print node.value
if node.left != null then visit(node.left)
if node.right != null then visit(node.right)
```
### 中序遍歷
中序遍歷的偽代碼如下:
```js
visit(node)
if node.left != null then visit(node.left)
print node.value
if node.right != null then visit(node.right)
```
### 后序遍歷
后序遍歷的偽代碼如下:
```js
visit(node)
if node.left != null then visit(node.left)
if node.right != null then visit(node.right)
print node.value
```