如何获得树的所有元素?

public static <E> PositionList<E> width(Tree<E> t){
    //I've initialized a queue and a PositionList<E>
    Queue<E> aux =  new NodeQueue<E>();
    PositionList<E> positionAux =  new NodePositionList<E>();
Position<E> pointer = t.root();


...

但是我不知道该如何继续...

例:

     1
    |  |
    2   3
   | |  | |
   4  5  6 7


返回列表[1,2,3,4,5,6,7]

最佳答案

使用队列进行水平遍历。
您可以看到我的实现:https://github.com/shaogbi/Java/blob/master/datastructure/MyBinaryTree.java
请参见levelTraverse功能。

07-24 20:26