二叉查找树总结

1.二叉查找树

特性:
树枝分二叉,左子树中节点小于当前节点,右子树中节点都大于当前节点。其中无相等节点。按照中序遍历完可为一个递增序列。
基于二分查找可以加快查找速度,但是由于其没有保证平衡性,容易退化成单链而树高扩增。

2.AVL二叉查找树

特性:
在二叉查找树的基础上,增加一条性质:每个节点的左右树高不超过1.
严格保证了平衡性,树高受到控制,利于查询,但是,当添加或者删除节点时,树的旋转调整耗费较大。

3.红黑树

特性:
在二叉查找树基础上,给每一个节点添加颜色(红黑)信息,来限制树高(确保没有一条路径大于其他路径两倍)的同时,减少旋转次数。

	 1.每个节点非黑即为红
	 2.根节点为黑
	 3.叶节点为黑空
	 4.红妈妈有黑儿子
	 5.每条路径都包含相同的黑色节点
	 6.每个节点到其所有叶节点的路径都包含相同数量的黑色节点

适用于查找和更改操作都比较频繁的情况,不是严格的平衡树。
应用场景:
1.Java中的TreeMap
2.Nginx的红黑树任务定时器, 因其有序性而能快速检索出离当前时间最近的任务。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值