gpt4 book ai didi

java - 如何遍历图表?

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:34:18 27 4
gpt4 key购买 nike

我有下面的树

     1
2 3
4 5 6
7 8 9 0

现在我想遍历树中所有可能的路径。总是可以从下一行移动到相邻的数字。例如

1 2 4 71 2 5 8

有什么提示是最好的方法吗?我正在寻找一般提示,但在我的实现中,每一行都有一个 ArrayList。

最佳答案

我怀疑使用递归是最简单的方法。

有点像

public static void visit(List<List<Integer>> tree, Visitor<List<Integer>> visitor) {
visit0(tree, visitor, Collections.<Integer>emptyList());
}

private static void visit0(List<List<Integer>> tree,
Visitor<List<Integer>> visitor, List<Integer> list) {
if (tree.isEmpty()) {
visitor.onList(list);
return;
}

List<List<Integer>> tree2 = tree.subList(1, tree.size() - 1);
List<Integer> ints = new ArrayList<Integer>(list);
ints.add(0); // dummy entry.
for(int n: tree.get(0)) {
ints.set(ints.size()-1, n);
visit0(tree2, visitor, ints);
}
}

关于java - 如何遍历图表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5789580/

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