public node delete_tree(node elem,int data) {
		node elem1;
		
			 if(elem.data==data) {
				 if(elem.left==null && elem.right==null) {return null;}
				 else if(elem.left==null) {return elem.right;}
				 else if(elem.right==null) {return elem.left;}
				 else {
					 elem1=min(elem.right);
					 elem1.right=deletemin(elem.right);
					 elem1.left=elem.left;
					 return elem1;
				 }
			 }
			 if(data<elem.data) { elem.left=delete_tree(elem.left,data); }
			 if(data>elem.data) { elem.right=delete_tree(elem.right,data); }
			
		
	
			 return elem;
	}