题目大意给定一系列电话号码,查看他们之间是否有i,j满足,号码i是号码j的前缀子串。题目分析典型的trie树结构。直接使用trie树即可。但是需要注意,若使用指针形式的trie树,则在大数据量下new/delete会很耗时,因此使用静态数组来存储trie树结构。使用静态数组代替指针在oj中常用于节省...
分类:
其他好文 时间:
2015-09-17 00:50:24
阅读次数:
272
http://hihocoder.com/problemset/problem/1014描述小Hi和小Ho是一对好朋友,出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互相帮助,在编程的学习道路上一同前进。这一天,他们遇到了一本词典,于是小Hi就向小Ho提出了那个经典的问题:“小Ho,你能不...
分类:
其他好文 时间:
2015-09-14 22:38:11
阅读次数:
315
描述小Hi和小Ho是一对好朋友,出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互相帮助,在编程的学习道路上一同前进。这一天,他们遇到了一本词典,于是小Hi就向小Ho提出了那个经典的问题:“小Ho,你能不能对于每一个我给出的字符串,都在这个词典里面找到以这个字符串开头的所有单词呢?”身经百战...
分类:
其他好文 时间:
2015-09-12 23:32:31
阅读次数:
200
很有段时间没写此系列了,今天我们来说Trie树,Trie树的名字有很多,比如字典树,前缀树等等。 一:概念 ? ? ?下面我们有and,as,at,cn,com这些关键词,那么如何构建trie树呢? 从上面的图中,我们或多或少的...
分类:
其他好文 时间:
2015-09-08 22:11:42
阅读次数:
190
题目大意: 给你一个n个单词的字典,然后再给你m个前缀,询问在这个字典中,每次我找到的以该前缀的字符串的个数。解题思路: 看着代码一步一步学会的,就是简单的trie的应用。代码:#include#include#include#include#include#includeusing names.....
分类:
其他好文 时间:
2015-09-05 16:13:10
阅读次数:
161
一、结巴中文分词采用的算法
基于Trie树结构实现高效的词图扫描,生成句子中汉字所有可能成词情况所构成的有向无环图(DAG)
采用了动态规划查找最大概率路径, 找出基于词频的最大切分组合
对于未登录词,采用了基于汉字成词能力的HMM模型,使用了Viterbi算法
二、结巴中文分词支持的分词模式
目前结巴分词支持三种分词模式:
精确模式,试图将句子最精确地切开,适...
分类:
编程语言 时间:
2015-08-29 18:50:49
阅读次数:
483
输入一系列字符串构成trie树 T ,空行,再输入字符串,查询 T 中以这些字符串为前缀的字符串数量。通过修改插入时,对 count 的操作,可以实现很多变形功能。杭电1251,1671#include#include#include#includeusing namespace std;#defi...
分类:
其他好文 时间:
2015-08-29 09:41:43
阅读次数:
129
Boggle Problem's Link: http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1457 Mean:给定n个串,有m个询问。每个询问给你一个4*4的字符矩阵,你可以在这个字符矩阵中任意字符出发,向四个方向走(已走过的不可重...
分类:
其他好文 时间:
2015-08-28 00:29:31
阅读次数:
217
有时,我们会碰到对字符串的排序,若采用一些经典的排序算法,则时间复杂度一般为O(n*lgn),但若采用Trie树,则时间复杂度仅为O(n)。Trie树又名字典树,从字面意思即可理解,这种树的结构像英文字典一样,相邻的单词一般前缀相同,之所以时间复杂度低,是因为其采用了以空间换取时间的策略。下图为一个...
分类:
编程语言 时间:
2015-08-21 12:44:02
阅读次数:
209
题目:http://acm.whu.edu.cn/land/problem/detail?problem_id=1572
题意: 有n个目标串,长度均小于15,(n
比赛的时候还以为是水题,其实是自己太水。这种题一般是AC自动机的中等题,本题也可以用KMP做,结合状压dp。
方法一:AC自动机
建完Trie树后,就是跑一遍dp,注意单词节点要 |=(1
dp过程: 用...
分类:
其他好文 时间:
2015-08-18 22:42:45
阅读次数:
226