【递归】按先序次序输入结点的值,递归创建二叉树。
这个能改成循环么?
输入序列为:1, 2, 3, -1, -1, 6, 7, -1, 8, -1, -1, 9, -1, -1, -1 (-1代表空)
创建如下形状的二叉树:
1
/
2
/ /
3 6
/ /
7 9
/
8
将-1值也插入到二叉树上:
1
/ /
2 -1
/ /
3 6
/ / / /
-1 -1 7 9
/ / / /
-1 8 -1 -1
/ /
-1 -1
【循环方法】按层输入结点值,每个结点要么是叶子结点,要么必须有左右子树,-1代表空。
同样的输入序列:1, 2, 3, -1, -1, 6, 7, -1, 8, -1, -1, 9, -1, -1, -1 (-1代表空)
1
/ /
2 3
/ / / /
-1 -1 6 7
/ / / /
-1 8 -1 -1
/ /
9 -1