gpt4 book ai didi

java - 如何递归构建数组

转载 作者:行者123 更新时间:2023-12-01 23:35:14 24 4
gpt4 key购买 nike

我想递归地构建一个数组,我以这种方式开始,但不知道如何正确地做到这一点:

public class ConnectivityNode {
private Server server;
private ConnectivityNode parent;
private ArrayList<ConnectivityNode> children;

...

public Server[] getServerRoute(){
if(this.parent == null) { return null; }
return this.server + this.parent.getServerRoute(); //of course this isnt correct
}
}

这个想法是获取一个Server数组

{parent.parent.server1,parent.server2,server3}

最佳答案

一种选择是使用 List 并创建一个辅助函数:

private void getServerRouter(List<Server> l) {
l.add(server);
if (parent != null) {
parent.getServerRouter(l)
}
}

public Server[] getServerRouter() {
List<Server> l = new ArrayList<>();
getServerRouter(l);
return l.toArray(new Server[l.size()]);
}

您甚至可以考虑从公共(public)方法返回List(这可能更有意义)。

关于java - 如何递归构建数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18806208/

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