
字典树
kaiweisun
这个作者很懒,什么都没留下…
展开
-
字典树学习材料
字典树,又称单词查找树,Trie树,是一种树形结构,典型应用是用于统计,排序和保存大量的字符串,所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来节约存储空间,最大限度的减少无谓的字符串比较,查询效率比哈希表高。Trie树示意图如附件图所示:该trie树存有abc、d、da、dda四个字符串,如果是字符串会在节点的尾部进行标记。没有后续字符的branch分支指向NULL...原创 2012-05-30 14:29:09 · 86 阅读 · 0 评论 -
poj 2001
题意:给出n个单词(1<=n<=1000),求出每个单词的非公共前缀,如果没有,则输出自己。 思路:基础的trie。 只要基本了解Trie的构造与查找过程,就可以去做了。 代码如下所示: #include<iostream> using namespace std; const int Max = 1002; const int branchN...原创 2012-05-30 14:54:49 · 135 阅读 · 0 评论 -
poj 3630
题意:给出n个数字串,问其中是否有一个串是另一个串的前缀。(静态建树的模板) 思路:基础的Trie。必须使用静态建树,否则会超时。还有就是有可能是前面的串是后面的串的前缀,也有可能后面的串是前面的串的前缀,如: 221122121 代码如下: #include<iostream> using namespace std; const int Max = ...原创 2012-05-30 15:43:33 · 121 阅读 · 0 评论 -
poj 2503
大致题意: 输入一个字典,字典格式为“英语à外语”的一一映射关系 然后输入若干个外语单词,输出他们的 英语翻译单词,如果字典中不存在这个单词,则输出“eh” 解题思路:trie树 代码如下: #include<iostream> #include<cstring> using namespace std; const int Max = ...原创 2012-05-30 16:33:39 · 152 阅读 · 0 评论