gpt4 book ai didi

java - 在Java中插入树

转载 作者:行者123 更新时间:2023-12-02 00:15:04 25 4
gpt4 key购买 nike

在 Java 文件中,我有以下代码:

MyTree atree = new MyTree();
atree.insert(1);

这不是一棵普通的树。 “atree”是根节点。该树中的每个节点都有 5 个子节点,所有子节点最初都设置为 null。 insert 的参数是您要“激活”的子项,即使其非空。所以我在 MyTree 类中有一个方法可以执行此操作:

public void insert(int i)
{
if(i == 1)
{
MyTree current = this.getChildOne();
current = new MyTree();
}
}

调用该函数后,我检查调用该函数的文件中的第一个节点。

if(atree.getChildOne() == null)
{
return -1;
}

并且它总是返回负数。我怀疑插入函数实际上是在“atree”的副本上工作,而不是在实际的“atree”上。但我并不完全确定。有人有解释吗?

最佳答案

您似乎没有在任何地方分配子级。代码

MyTree current = this.getChildOne();
current = new MyTree();

不分配子一。您初始化了一个局部变量 current,但该变量在方法结束时会丢失。

我认为您可能想在插入方法中执行类似的操作

if ( i == i ) {
this.childOne = // assign it here
}

关于java - 在Java中插入树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11995183/

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