您可以在實際存在時按需創建節點。
public class Node {
Node left, right; // created as required
String element;
Node parent;
public Node(Node parent, String element) {
this.parent = parent;
this.element = element; // if you don't have an element you don't need a Node.
}
}
注:可能是因爲你不需要parent
領域,大多數實現不使用它。
public class Node {
Node left, right; // created as required
String element;
public Node(String element) {
this.element = element; // if you don't have an element you don't need a Node.
}
public void setLeft(Node left) { this.left = left; }
public void setRight(Node right) { this.right = right; }
}
例如,
Node d = new Node("d");
d.setLeft(new Node("a"));
d.setRight(new Node("z"));
嗯,不這樣做?當你說'節點node = new Node();'時,你想要'left'和'right'的值是什麼? –
我看到你困惑的地方。只要左右兩邊爲空即可。稍後當你決定爲你的樹添加一個節點時,你可以初始化那些值爲'new Node()':) – Spidey