Trie树+m叉查找树+Radix树

Trie树,即字典树,又称单词查找树或键树,是一种树形结构。是一种hash树的变种,典型应用是统计和排序大量字符串(不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:最大限度地减无谓字符串的查找,查询效率比hash表高。

Trie的核心思想是空间换时间,李彤字符串的公共前缀来降低查询时间的开销以达到提高效率的目的。

Trie的缺点,Trie树的内存消耗比较大,当然,或许用左儿子有兄弟的方式建树,可能会好点,可见,优化的点在于建树的过程。

和二叉查找树不同,在trie树中,每个节点并不是存储一个元素,trie树把要查找的关键字看做一个字符序列,并根据构成关键字的先后顺序构造用于检索的树结构。在trie书上进行检索类似于查询英语字典。

Trie树是简单但实用的数据结构,通常用于实现字典查询。我们做即时响应用户输入的AJAX搜索框时,就是Trie树。本质上,Trie是一棵存储多个字符串的树。相邻节点间的边代表一个字符,这样树的每条分支代表一则子串,而树的叶节点则代表完整的字符串。和普通树不同的地方是,相同的字符串前缀共享同一条分支。

 我们可以看到,trie树每一层的节点数是26^i(26个英文字母)级别的。所以为了节省空间,我们用动态链表,或者用数组来模拟。空间的花费,不会超过单词数×单词长度。

 

 

(3)Radix树

https://www.cnblogs.com/Bozh/archive/2012/04/15/radix.html

posted @ 2020-10-12 00:40  goldstine  阅读(270)  评论(0)    收藏  举报