二叉树

来源:互联网 发布:耳环饰品淘宝推荐 编辑:程序博客网 时间:2024/06/05 15:32

          二叉搜索树:左节点小于父节点,右节点大于等于父节点。

          

二叉搜索树:

package Suan;public class Node {public int number;public Node left;public Node right;Node(int num){number=num;}}

package Suan;public class Tree {public Node root;Tree(){root =null;}public Node find(int i){Node current = root;while(i!=current.number){if(i>=current.number){current=current.right;}else{current=current.left;}if(current==null){return null;}}return current;}public void insert(int i){Node node= new Node(i);if(root==null){root = node;}else{Node current = root;Node parent;while(true){parent = current;if(i<current.number){//leftcurrent=current.left;if(current==null){parent.left=node;return;}}else{current = current.right;if(current==null){parent.right=node;return;}}}}}public Node get(Node delNode){//得到后继节点Node parent = delNode;Node sNode = delNode;Node current = delNode.right;while(current!=null){parent = sNode;sNode = current;current = current.left;}if(sNode!=delNode.right){parent.left = sNode.right;sNode.right = delNode.right;}return sNode;}public boolean delete(int i){Node parent =root;Node current = root;boolean isLeftChild =true;while(current.number!=i){parent = current;if(i<current.number){isLeftChild=true;current = current.left;}else{isLeftChild=false;current = current.right;}if(current==null){return false;}}if(current.left==null&&t.right==null){if(current==root){root=null;}else if(isLeftChild){parent.left=null;}else{parent.right=null;}}else if(current.left==null){if(current==root){root = current.right;}else if(isLeftChild){parent.left = current.right;}else{parent.right = current.right;}}else if(current.right==null){if(current==root){root = current.left;}else if(isLeftChild){parent.left = current.left;}else{parent.right = current.left;}}else{Node sNode  = get(current);if(current==root){root = sNode;}else if(isLeftChild){parent.left = sNode;}else{parent.right=sNode;}sNode.left = current.left;}return true;}public  void inOrder(Node local){//中序遍历if(local!=null){inOrder(local.left);System.out.print(local.number+"  ");inOrder(local.right);}}}



0 0
原创粉丝点击