数据结构定义和算法--Trie 树

什么是“Trie 树”?

Trie 树,也叫“字典树”。顾名思义,它是一个树形结构。它是一种专门处理字符串匹配的数据结构,用来解决在一组字符串集合中快速查找某个字符串的问题。Trie 树的本质,就是利用字符串之间的公共前缀,将重复的前缀合并在一起。

数据结构定义和算法--Trie 树_第1张图片

如何实现一棵 Trie 树?

Trie 树主要有两个操作,一个是将字符串集合构造成 Trie 树。这个过程分解开来的话,就是一个将字符串插入到 Trie 树的过程。另一个是在 Trie 树中查询一个字符串。存储一个 Trie 树:

数据结构定义和算法--Trie 树_第2张图片

时间复杂度

构建 Trie 树的过程,需要扫描所有的字符串,时间复杂度是 O(n)(n 表示所有字符串的长度和)。每次查询时,如果要查询的字符串长度是 k,就能完成查询操作。时间复杂度是 O(k),k 表示要查找的字符串的长度。

你可能感兴趣的:(数据结构和算法)