LeetCode 算法题 BAT 字节跳动 拼多多 美团 京东大厂面试题集锦禅与计算机程序设计艺术Java 核心技术

AVL树,红黑树,B树,B+树,Trie树都分别应用在哪些现实场

2021-03-20  本文已影响0人  光剑书架上的书

AVL树,红黑树,B树,B+树,Trie树都分别应用在哪些现实场景中?

AVL树

AVL树: 最早的平衡二叉树之一。应用相对其他数据结构比较少。windows对进程地址空间的管理用到了AVL树。

LL 旋转:

红黑树

红黑树: 平衡二叉树,广泛用在C++的STL中。如map和set都是用红黑树实现的。

B/B+树

B/B+树: 用在磁盘文件组织 数据索引和数据库索引。

Trie树

Trie树(字典树): 用在统计和排序大量字符串,如自动机。

Trie又被称为前缀树、字典树,所以当然是一棵树。

上面这棵Trie树包含的字符串集合是{in, inn, int, tea, ten, to}。每个节点的编号是我们为了描述方便加上去的。树中的每一条边上都标识有一个字符。这些字符可以是任意一个字符集中的字符。比如对于都是小写字母的字符串,字符集就是’a’-‘z’;对于都是数字的字符串,字符集就是’0’-‘9’;对于二进制字符串,字符集就是0和1。

比如上图中3号节点对应的路径0123上的字符串是inn,8号节点对应的路径0568上的字符串是ten。终结点与集合中的字符串是一一对应的。

参考链接:https://blog.csdn.net/weixin_39778570/article/details/81990417

上一篇 下一篇

猜你喜欢

热点阅读