gpt4 book ai didi

java - 编写递归预序树搜索,以列表形式返回答案

转载 作者:行者123 更新时间:2023-12-01 18:36:55 25 4
gpt4 key购买 nike

我创建了以下树

T<Integer> t1 = new T(84, new T(48, new T(30), new T(50)),
new T(96, new T(90), new T(1)));

我现在想做的是按预先顺序对树进行排序,并将答案作为列表返回。我的代码可以工作,但我正在构建多个列表而不是一个列表。我的代码如下:

    public static<E> List<E> porderlist(T<E> a) {


if (a.isEmpty())
return new List<E>();
else {


return new List(a.getValue(), new List(porderlist(a.getLeft()), porderlist(a.getRight())));

}

我得到的输出是 [84, [48, [30, []], 50, []], 96, [90, []], 1, []]

当我想要的输出是[84,48,30,50,96,90,1]

有关如何停止列表嵌套的任何线索。

提前非常感谢

最佳答案

public static<E> List<E> porderlist(T<E> a) {
if (a.isEmpty())
return new ArrayList<E>();
else {
List<E> list = new ArrayList<E>();
list.add(a.getValue());
list.addAll(porderlist(a.getLeft()));
list.addAll(porderlist(a.getRight()));
return list;
}
}

关于java - 编写递归预序树搜索,以列表形式返回答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60016581/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com