【发布时间】:2021-01-13 14:14:51
【问题描述】:
如何将最初作为链接结构实现的二叉树转换为基于数组的结构?
如果二叉树是这样的完全二叉树,那就没有问题了:
5
/ \
/ \
/ \
3 7
/ \ / \
1 4 6 9
因为我可以使用广度优先遍历在数组中连续添加其节点。
但如果它是这样的不完整树怎么办:
5
/ \
/ \
/ \
3 7
\ / \
4 6 9
5
\
\
\
7
/ \
6 9
5
/ \
/ \
/ \
3 7
\
4
有些节点没有任何子节点,或者它的子节点数不完全是 2。如何将其转换为数组?
如何以这种方式将不完整的二叉树示例添加到数组中:
1st: 5 3 7 null 4 6 9
2nd: 5 null 7 null null 6 9
3rd: 5 3 7 null 4 null null
【问题讨论】:
标签: arrays data-structures binary-tree