二叉树法插入查找例子
二分法查找...查找...
代码比较简单...没有注释了
public class BinaryTree {public static void main(String[] args) {BinaryTree bt = new BinaryTree();int[] ints = {12,123,21,123,1,432,23,42,3,123,124,3,5435,66,456554,435,423,42,1} ;for (int i = 0; i <ints.length ; i++) {bt.add(new Node(ints[i])) ;}bt.toPrint() ;}private Node root;public void add(Node n) {if(root==null){root = n ;return ;}else{add(root , n) ;}}public void toPrint(){toPrint(root) ;}private void toPrint(Node n){if(n.getLeft()!=null){toPrint(n.getLeft()) ;}System.out.println(n.getValue());if(n.getRight()!=null){toPrint(n.getRight()) ;}}public void add(Node f , Node n){if(f.getValue()==n.getValue()){return ;}if(f.getValue()>n.getValue()){if(f.getLeft()!=null){add(f.getLeft(),n) ;}else{f.setLeft(n) ;}}else{if(f.getRight()!=null){add(f.getRight(),n) ;}else{f.setRight(n) ;}}}}class Node {public Node(int value) {this.value = value;}private Node left;private Node right;private int value;public Node getLeft() {return left;}public void setLeft(Node left) {this.left = left;}public Node getRight() {return right;}public void setRight(Node right) {this.right = right;}public int getValue() {return value;}public void setValue(int value) {this.value = value;}}