这是我参与11月更文挑战的第6天,活动详情查看:2021最后一次更文挑战
1、前缀树介绍
- 前缀树(Trie树),即字典树,又称单词查找树或键树,是一种树形结构,是一种哈希树的变种。
- 典型应用是用于 统计 和 排序 大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。
- 优点:最大限度地减少无谓的字符串比较,查询效率比哈希表高。
- 以下介绍图源于网络
2、前缀树应用(剑指 Offer 替换单词)
- 在英语中,有一个叫做 词根(root) 的概念,它可以跟着其他一些词组成另一个较长的单词——我们称这个词为 继承词(successor)。例如,词根an,跟随着单词 other(其他),可以形成新的单词 another(另一个)。现在,给定一个由许多词根组成的词典和一个句子,需要将句子中的所有继承词用词根替换掉。如果继承词有许多可以形成它的词根,则用最短的词根替换它。需要输出替换之后的句子。
- 示例1
1 | ini复制代码输入: dictionary = ["cat","bat","rat"], |
- 示例2
1 | ini复制代码输入:dictionary = ["ac","ab"], |
- 实现代码以及注释
1 | ini复制代码class Solution { |
本文转载自: 掘金