java实现二叉平衡树

网上找了一些源码都有些错误,自己写吧

首先建立树节点

public class TreeNode {
	 int value;
	 TreeNode left;
	 TreeNode right;
	 
	 public TreeNode(int value){
		 this.value=value;
	 }
	 
	 public void setNode(TreeNode left,TreeNode right){
		 this.left=left;
		 this.right=right;
	 }
}
二叉平衡树的增删

public class TreeDemo {
	
	//  查找
	static boolean flag=false;
	// 递归方式
	public void SearchBST(TreeNode root,int value) {
		if(root==null){
			flag=false;
			return;
		}
		if(root.value>value)
			SearchBST(root.left, value);
		else if(root.valuevalue)
				root=root.left;
			else if(root.valuevalue)
			root.left=InsertBST1(root.left, value);
		else if(root.valuevalue)
			root.left=DeleteBST(root.left, value);
		else if(root.value


你可能感兴趣的:(java基础)