原创转载请注明出处:http://agilestyle.iteye.com/blog/2357562
AVL树
AVL是最先发明的自平衡二叉查找树,在AVL树中任何节点的两个子树的高度最大差别为1,也被称为高度平衡树二叉树,所以通常的结果是,维护这种高度平衡所付出的代价比从中获得的效率收益还大,故而实际的应用不多,更多的地方是用追求局部而不是非常严格整体平衡的红黑树。当然,如果场景中对插入删除不频繁,只是对查找特别有要求,AVL还是优于红黑的。
红黑树
红黑树也是一种自平衡二叉查找树,它的统计性能要好于平衡二叉树
- C++的STL中
- Linux进程调度Completely Fair Scheduler,用红黑树管理进程控制块
- epoll在内核中的实现,用红黑树管理事件块
- nginx中,用红黑树管理timer等
- Java的TreeMap实现
B树/B+树
B和B+通常用于数据库和操作系统的文件系统中做索引等
- Mysql B+树索引
Trie树
Trie树,即字典树,又称单词查找树
- 串的快速检索
- “串”排序
- 最长公共前缀
本文介绍了几种自平衡二叉查找树,包括AVL树、红黑树,并探讨了它们的特点及应用场景。AVL树是一种高度平衡的二叉树,适用于查找需求高的场景。红黑树则因其良好的统计性能而在多种系统中得到广泛应用,如C++ STL、Linux调度器等。此外,文章还提及了B树、B+树和Trie树的应用。
2437

被折叠的 条评论
为什么被折叠?



