字典树

字典树csdn链接:

trie是哈希树的一种。查询是否存在字符串,统计前缀,

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

Trie树的最坏空间复杂度为O(m^n)。Trie树的最坏时间复杂度为O(n)。

 

字典树典型的应用

1.字典树在串的快速检索中的应用。
  给出N个单词组成的熟词表,以及一篇全用小写英文书写的文章,请你按最早出现的顺序写出所有不在熟词表中的生词。在这道题中,我们可以用字典树,先把熟词建一棵树,然后读入文章进行比较,这种方法效率是比较高的。

2. 字典树在“串”排序方面的应用
  给定N个互不相同的仅由一个单词构成的英文名,让你将他们按字典序从小到大输出用字典树进行排序,采用数组的方式创建字典树,这棵树的每个结点的所有儿子很显然地按照其字母大小排序。对这棵树进行先序遍历即可。

3. 字典树在最长公共前缀问题的应用
  对所有串建立字典树,对于两个串的最长公共前缀的长度即他们所在的结点的公共祖先个数,于是,问题就转化为最近公共祖先问题

posted @ 2021-11-21 11:21  Pan_c  阅读(58)  评论(0)    收藏  举报