poj2513:http://poj.org/problem?id=2513题意:就是求一个欧拉回路。题解:本题是判断欧拉通路是否存在,但是如果是用map的话就会超时,这里采用了trie树,有发现trie树的一种用法。神奇 啊 1 #include 2 #include 3 #include ...
分类:
其他好文 时间:
2014-09-17 10:09:52
阅读次数:
219
首先,学AC自动机之前有必要掌握 Trie 图,KMP。 AC自动机其实和KMP类似,它的fail指针就相当于KMP中的next指针,只不过fail指针是空间上的,而next指针是线上的。fail指针永远都指向层数比它低的对应节点,所 以它有比较多的性质, 比如 一直走fail 最后始终是会走到.....
分类:
其他好文 时间:
2014-09-17 10:08:41
阅读次数:
195
Trie树,又称为字典树,是一种树形结构,是一种哈希树的变种,是一种用于快速检索的多叉树数据结构。
用于保存大量的字符串。它的优点是:利用字符串的公共前缀来节约存储空间。
Trie的核心思想是空间换时间。利用字符串的公共前缀来降低查询时间的开销以达到提高效率的目的。
它有3个基本性质:
1、根节点不包含字符,除根节点外每一个节点都只包含一个字符。
2、从根节点到某一节点,路径上经过的...
分类:
其他好文 时间:
2014-09-16 23:48:21
阅读次数:
486
题意:给你一个文本串,其中模式串有两种模式,可以重复和不可以重复,分别有多少个模式串解题思路:在 Trie 里面多加几维数组来维护 重复和不重复的和,由于不够优美,差点超内存。解题代码: 1 // File Name: temp.cpp 2 // Author: darkdream 3 // ...
分类:
其他好文 时间:
2014-09-16 00:16:29
阅读次数:
274
题目大意:给定一些单词和一个字符串,求有多少单词在字符串中出现过
首先我不想吐槽题号。真的不想。真的不想!!别问我为什么说这句话!!不想就是了!!
AC自动机模板题
简单介绍一下AC自动机
首先不要把这东西和自动AC机弄混 自动AC机算法等我们发明之后再加介绍
这东西的实现方法就是把所有单词插入一棵Trie树 然后在Trie树上跑KMP算法
每个节点有一个next指针 和KMP算法...
分类:
其他好文 时间:
2014-09-15 14:21:49
阅读次数:
176
第一部分:跳跃表
本文将总结一种数据结构:跳跃表。前半部分跳跃表性质和操作的介绍直接摘自《让算法的效率跳起来--浅谈“跳跃表”的相关操作及其应用》上海市华东师范大学第二附属中学 魏冉。之后将附上跳跃表的源代码,以及本人对其的了解。难免有错误之处,希望指正,共同进步。谢谢。
跳跃表(Skip List)是1987年才诞生的一种崭新的数据结构,它在进行查找、插入、删除等操作时的期望...
分类:
其他好文 时间:
2014-09-14 23:46:08
阅读次数:
1323
传送门Colored SticksTime Limit: 5000MSMemory Limit: 128000KDescriptionYou are given a bunch of wooden sticks. Each endpoint of each stick is colored with...
分类:
其他好文 时间:
2014-09-14 20:34:57
阅读次数:
202
题目:你到了新的国家,手中有一个字典,把对应的语言翻译成英语。
分析:字符串,字典树。利用新语言建树,对应节点存储相应的英文单词,查询输出。
说明:强大的ungetc函数。
#include
#include
#include
#include
using namespace std;
char Nword[21],Eword[21];
/* Trie define */
...
分类:
其他好文 时间:
2014-09-14 15:25:00
阅读次数:
239
Trie树,又称字典树,单词查找树。它来源于retrieval(检索)中取中间四个字符构成的。用于存储大量的字符串以便支持快速模式匹配。主要应用在信息检索领域。 Trie有三种结构:标准Trie(standard trie),压缩Trie,后缀Trie(suffix trie)。 1、标准Trie ...
分类:
其他好文 时间:
2014-09-14 14:06:37
阅读次数:
242
poj1816:http://poj.org/problem?id=1816题意:给你n个模板串,然后每个串除了字母,还有?或者*,?可以代替任何非空单个字符,*可以替代任何长度任何串,包括空字符串。现在给以一些串,问你这些串在哪些串中出现过。题解:trie+DFS。首先,把n个字符串放到trie中...
分类:
其他好文 时间:
2014-09-13 20:03:45
阅读次数:
219