目录:
什么是Trie树:
又称单词查找树,字典树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希树高。
至于Trie树长什么样子呢?
通过图片不难看出:
1、字典树用边表示字母
2、有相同前缀的单词公用前缀节点,那我们可以的得出每个节点最多有26个子节点(在单词只包含小写字母的情况下)
3、整棵树的根节点是空的。
4、每个单词结束的时候用一个特殊字符表示,图中用的‘′,那么从根节点到任意一个‘′,那么从根节点到任意一个‘’所经过的边的所有字母表示一个单词。
Trie树的各种操作:
1、初始化:
一颗空的 Trie 树仅包含一个根节点,该节点的字符指针为空。
2、插入:
当需要插入一个字符串 S 时,需要一个指针 P 指向根节点。然后,依次扫描 S 中的每个字符 c:
(1)若 P 的 c 字符指针指向一个已经存在的节点 Q ,则令 P = Q 。
(2)若 P 的 c 字符指针指向空,则新建一个节点 Q ,令 P 的 c 字符指针指向 Q ,