java二叉排序树_java二叉排序树,已有代码,如何调通输出?

publicclassBinaySortNode{publicintkey;publicVvalue;publicBinaySortNodelChild;publicBinaySortNoderChild;publicBinaySortNode(){key=0;value=null;lChild=null;rChild=...

public class BinaySortNode

{

public int key;

public V value;

public BinaySortNode lChild;

public BinaySortNode rChild;

public BinaySortNode()

{

key = 0;value=null;

lChild = null;rChild = null;

}

public BinaySortNode(int k, V v)

{

key = k; value = v;

lChild = null;rChild = null;

}

}

class BinarySortTree

{

public BinaySortNode root;

public BinarySortTree(int k, V v)

{

root = new BinaySortNode(k,v);

}

public BinaySortNode search(BinaySortNode node, int key)

/*在root所指二叉排序树中查找某关键字等于key的数据元素,若查找成功,则返回该数据结点,否则返回null*/

{

if (node == null || key==node.key) return node; /* 查找结束*/

else if (key < node.key)

return search(node.lChild,key);

else return search(node.rChild, key);

}

public boolean insert(int key, V v)

{

BinaySortNode p,pre;

boolean isSearched = false;

p = root;

pre = root;

while(p!= null && key != p.key)

{

pre = p;

if(key < p.key) p = p.lChild; /*在左子树中查找*/

else p = p.rChild; /*在右子树中查找*/

}

if(p!= null && key == p.key)

{

isSearched =false;

return false; //要插入的数据已经存在,不需要插入

}

else

{

p = new BinaySortNode(key,v);

if(key

else pre.rChild = p;

return true;

}

}

public void display(BinaySortNode node)

{

if(node==null) return;

else

{

display(node.lChild);

System.out.print(node.value);

display(node.rChild);

}

}

}

展开

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值