作业:二叉树 - 级别顺序的交叉

1 algorithm binary-tree

有没有办法访问从最低级别到较高级别(根)的二叉树?

不是从根级到最低级!!!

(而不是使用水平顺序遍历和堆栈...... !!!)<---它的对面..

太难了......谢谢!

McP*_*inM 5

这里有一些挑战导致不同的解决方案:

  1. 你可以穿过树吗?通常会设置数据结构,因此您只能进行下载.您可以找到所有叶节点,按级别将它们放入优先级队列,然后遍历.

  2. 你能存储O(n)额外的数据吗?您可以以正常的广度优先方式遍历它,将指针按级别插入优先级队列,与之前的解决方案一样,但这次在初始遍历期间插入所有节点.这将增加遍历期间使用的辅助数据的最大大小.

  3. 树是否保证平衡和饱满,就像它可能在像树一样的树?如果是,您可以通过更简单的方式遍历它,只需前往正确的位置即可.