字典树
文章平均质量分 75
_暮雨潇湘_
&_-./
展开
-
找出出现次数前十的单词
有106个英文单词,由小写字母组成,长度不超过20,要求找出其中出现次数前十的单词。 PS:如果第10名和第11名出现次数相同,任意一个皆可。 思路分析: 字典树 我们可以先用字典树记录下所有出现过的单词,然后对所有单词出现的次数进行部分排序,从而找出前十。 具体来说,可以这样做:扫描每个单词进行建字典树。在建树过程中,如果该单词没有出现过,我们就分配给该单词一个空间,s[]原创 2013-09-30 20:37:23 · 1132 阅读 · 0 评论 -
poj 1451 T9 字典树
题目背景:为了方便手机用户发短信,希望在用户按键时,根据每个词出现的频数,给出每个阶段最有可能要打的词。 PS:相同的前缀频数要相加计算。 题目大意:有不同的几组测试样例,每个测试样例中有w个词及每个词出现的频数,然后是p组要打的词,按1键表示结束输入。要求输出按到每个键时最可能要打的词。 解题思路: 根据每个单词建立一棵“单词字典树”(A树), 附加域记录每个字母出现的频数。再根原创 2013-09-30 22:32:42 · 1599 阅读 · 0 评论 -
敏感词过滤-AC自动机
在很多内容系统中,都需要过滤一些敏感词,比如说"fuck you shit up"就要发现里面有"fuck"、"shit"这些脏词。 首先,我们要先了解敏感词过滤的一些特征: 1. 敏感词多,一般成千上万 2. 单词长度有限,一般不会超过10 3. 要过滤的句子长度有限,一般不过1000 通过上面特征,我们粗略的算一下,如果采用暴力匹配方案的话,复杂度将会是1k*10*1k=10原创 2017-07-01 17:29:49 · 3583 阅读 · 0 评论