我制作了一个ArrayList,其中填充了来自不平衡二叉树的值( ArrayList中的对象是InOrder遍历排序的)。
当我去构建我的LinkedBinaryTree类中的二叉树时,我会从编译器那里得到一个“找不到符号错误”。我很困惑,这是我尝试过的。
1)成功地将值(而不是来自arrayList的值)放置到二叉树中,以确定是否正确地理解了一般框架(树是由节点组成的),并使用打印行函数打印根,然后打印左侧根等等。
2)然后尝试构建一个方法,该方法以一个已被InOrder排序的ArrayList作为参数,并使用subList递归构建左右树的错误。
What does a "Cannot find symbol" or "Cannot resolve symbol" error mean?
试图找出是哪个问题导致了这个问题。我真是不知所措。
public LinkedBinaryTree BinaryBalanceTreeMethod(java.util.List delta) {
if (delta.isEmpty()) {
return null;
}
int middle = delta.size() / 2;
LinkedBinaryTree tree = new LinkedBinaryTree(delta.get(middle));
tree.getRootNode.setLeft(BinaryBalanceTreeMethod(delta.subList(0, middle)));
tree.getRootNode.setRight(BinaryBalanceTreeMethod((delta.subList(middle + 1, delta.size()))));
return tree;
}
万一有人需要看主要方法..。
Iterator it = treez.iteratorInOrder();
java.util.List listz = new java.util.ArrayList();
while (it.hasNext()) {
listz.add(it.next());
}
System.out.println(listz.toString());
LinkedBinaryTree test = new LinkedBinaryTree()
test.BinaryBalanceTreeMethod(listz);
System.out.println(test.getRootElement());
我应该注意-我有另一个名为ArrayList的类,所以我必须使用这个java.util.ArrayList来实例化。
发布于 2020-05-24 13:45:00
在您的main
方法中,您忽略了LinkedBinaryTree test = new LinkedBinaryTree()
末尾的分号;
System.out.println(listz.toString());
LinkedBinaryTree test = new LinkedBinaryTree() // you missed the ; here
test.BinaryBalanceTreeMethod(listz);
https://stackoverflow.com/questions/61992034
复制相似问题