# 前序-中序-后序

现有树:

      A
  B       C
D   E   F   G
1
2
3

前序遍历: A B D E C F G 中序遍历: D B E A F C G 后序遍历: D E B F G C A

// 创建树
function Node(value, left, right) {
  this.value = value
  this.left = left
  this.right = right
}
const G = new Node('G', null, null)
const F = new Node('F', null, null)
const E = new Node('E', null, null)
const D = new Node('D', null, null)
const C = new Node('C', F, G)
const B = new Node('B', D, E)
const A = new Node('A', B, C)

// 前序遍历
function treeFront(node) {
  console.log(node.value)
  if (node.left) treeFront(node.left)
  if (node.right) treeFront(node.right)
}
treeFront(A)

// 中序遍历
function treeMiddle(node) {
  if (node.left) treeMiddle(node.left)
  console.log(node.value)
  if (node.right) treeMiddle(node.right)
}
treeMiddle(A)

// 后序遍历
function treeEnd(node) {
  if (node.left) treeEnd(node.left)
  if (node.right) treeEnd(node.right)
  console.log(node.value)
}
treeEnd(A)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
最后更新时间: 12/20/2021, 9:52:07 PM