二叉查找树-总结

定义:
二叉排序树或者是一棵空树,或者是具有下列性质的 二叉树
(1)若左子树不空,则左子树上所有结点的值均小于它的 根结点的值;
(2)若右子树不空,则右子树上所有结点的值均大于或 等于它的根结点的值;
(3)左、右子树也分别为二叉排序树;
(4)没有键值相等的节点。
查找:
查找对于二叉树查找树来说很简单这也是二叉查找树的优势所在,和目标值一样查找成功,比当前节点大往右子树查找,比当前节点小往左子树查找,递归下去即可。算法复杂厚度为O(logn)。
插入:
二叉查找树插入都是叶子节点插入,首先第一步是查找,从根节点起,如果根节点为NULL,直接插入根节点即可,如果插入数据比插入节点大,往右子树插入,如果比插入节点小插入左子树,如果和插入节点相等,则在节点计数器加1。 算法复杂度 O(logn)。
查找树的建立:
建立就相当于把一个一个数,往一课树种做插入动作,算法复杂度O(nlogn)。
删除:
1、二叉查找树对的删除相对复杂点。如果删除节点没有左子树或者没有右子树那么只要把左儿子或者右儿子替换被删节点即可。
2、如果既没有左儿子也没有右儿子,直接删除即可,让父亲把指向儿子的指针置为空。
3、如果既有左儿子也有右儿子,找到右子树中的最小值替换被删除节点,同时删除改最小值(递归)算法复杂度为O(logn)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值