private void insert(int d, Node<T> parent, Node<T> node, T value) { if (node == null) { if (d == 1) { parent.addRight(value); } else { parent.addLeft(value); } } else { int compare = node.getValue().compareTo(value); if (compare < 0) { insert(1, node, node.getRight(), value); } else { insert(-1, node, node.getLeft(), value); } } }
public static void main(String args[]) { Node node1 = new Node(1); Node node2 = new Node(2); Node node3 = new Node(3); Node node4 = new Node(4); Node node5 = new Node(5); Node node6 = new Node(6); node3.addLeft(node1); // node3.addRight(node5); // node5.addLeft(node4); node1.addRight(node2); // node5.addRight(node6); Node node9 = new Node(9); node1.addLeft(node9); node3.display(); System.out.print("是否完全二叉树==" + ifComplete(node3)); }