Java中一个类中的简单二叉树
我必须实现一个非常简单的二叉树。我只需要一个Java中一个类中的简单二叉树,java,Java,我必须实现一个非常简单的二叉树。我只需要一个put和get方法。如果一个键已经在使用中,我必须只替换该值。这是我的代码,但我非常非常不确定这是否工作正常。。。你能确认这个密码能用吗?很抱歉我不知道如何调试这样的类…:/不,这不是家庭作业。只是一个学习java课程的模板…;) 添加此选项并测试: @Override public String toString() { if(this.left==null&&this.right != null){ ret
put
和get
方法。如果一个键已经在使用中,我必须只替换该值。这是我的代码,但我非常非常不确定这是否工作正常。。。你能确认这个密码能用吗?很抱歉我不知道如何调试这样的类…:/不,这不是家庭作业。只是一个学习java课程的模板…;)
添加此选项并测试:
@Override
public String toString() {
if(this.left==null&&this.right != null){
return this.value.toString()+" " + this.right.toString();
}
if(this.left!=null&&this.right == null){
return this.value.toString()+" " + this.left.toString();
}
if(this.left !=null && this.right != null)
return this.value.toString()+" " + this.left.toString()
+" " + this.right.toString();
return this.value.toString();;
}
这是打印树中所有节点的预订单。如果正确创建树,它应该能够打印所有值
要按升序打印,请使用顺序树遍历:
@Override
public String toString() {
if(this.left==null&&this.right != null){
return this.value.toString()+" " + this.right.toString();
}
if(this.left!=null&&this.right == null){
return this.left.toString() +" " + this.value.toString();
}
if(this.left !=null && this.right != null)
return this.left.toString()
+" " +this.value.toString()+" " + this.right.toString();
return this.value.toString();
}
为什么不运行它呢?在main方法中添加一些if语句,以确保树中的各个点具有正确的键和值。SImple@TungD.Nguyen因为我不知道如何调试。。。要么我的
toString
不正确,要么我的类不正确。我建议您从学习如何使用JUnit之类的单元测试工具开始。然后,您可以构建一些测试来验证代码是否正常工作。这是一种比手动检查打印语句要好得多的技术。结果是:一、二、三、七、六、五、九谢谢我改变了我的主要方法。以2开头,然后再加上0。现在输出是错误的。。你知道为什么吗?我找不到一个错误“二零三新七六五九”是正确的:用于预订。没有错,谢谢!我刚刚为最终输出添加了我自己的toString。看起来还可以。:)
@Override
public String toString() {
if(this.left==null&&this.right != null){
return this.value.toString()+" " + this.right.toString();
}
if(this.left!=null&&this.right == null){
return this.value.toString()+" " + this.left.toString();
}
if(this.left !=null && this.right != null)
return this.value.toString()+" " + this.left.toString()
+" " + this.right.toString();
return this.value.toString();;
}
@Override
public String toString() {
if(this.left==null&&this.right != null){
return this.value.toString()+" " + this.right.toString();
}
if(this.left!=null&&this.right == null){
return this.left.toString() +" " + this.value.toString();
}
if(this.left !=null && this.right != null)
return this.left.toString()
+" " +this.value.toString()+" " + this.right.toString();
return this.value.toString();
}