1
我有一个节点类,我只是想在向我的树添加元素时缩小问题范围。我认为我的节点类没有正确地创建要添加到树中的节点。我打印每个节点时,它都会返回内存地址。我似乎无法让它打印任何其他内容。任何帮助确定我的节点类是否有问题都会很好。Java:二叉树节点只显示内存地址或空
什么我的程序打印的例子:
([[email protected])
([[email protected])
([[email protected])
([[email protected])
的TreeNode
类:
public class TreeNode {
char[] data;
TreeNode left, right, parent;
// used for printing:
int column;
int row;
int center;
public TreeNode(char[] data) {
this.data = data;
left = right = parent = null;
}
@Override
public String toString() {
return "(" + data + ")";
}
public int return_letter(){
char x = data[0];
int b = Character.getNumericValue(x);
return b;
}
public int findMaxDepth() {
int lmax = 0;
int rmax = 0;
if (left != null) {
lmax = left.findMaxDepth();
}
if (right != null) {
rmax = right.findMaxDepth();
}
return 1 + Math.max(lmax, rmax);
}
}
你还没有真正描述您的问题...请向我们提供更多信息。一个简短但完整的程序演示这个问题会很有帮助。 –
你可以请你发布任何错误消息? – sunrize920
'@Override public String toString(){return“(”+ data +“)”;}'不会打印出你想要的东西。使用'Arrays.toString(data)'获得数组内容的字符串表示。 –