图解AC自动机 前言: + 我们引出这样一个问题: + 我想知道字符串$t$在字符串中$s$出现多少次/有没有出现? + 那我们可以使用kmp算法求出$t$的next数组,之后$O(n)$匹配求解即可。 + 那如果把问题升级一下呢? + 想知道字符串$t_1,t_2,...,t_n$在字符串$s$中 ...
分类:
其他好文 时间:
2020-01-24 09:15:34
阅读次数:
77
不需要前置技能。 是 AC自动机 的前置技能。 Trie,又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种。典型应 用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索 引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来减少查询时 间,最大限度地减少无谓的 ...
分类:
其他好文 时间:
2020-01-20 22:50:56
阅读次数:
70
AC自动机 一样的不太好理解,有时间再啃 敏感词过滤 单模式字符串匹配算法:(BF,RK,BM,KMP)每次取敏感词字典中一个敏感语做为模式串在用户输入的主串中进行匹配,效率较低 多模式字符串匹配算法:(Trie树,AC自动机) Trie树:把用户输入的内容作为主串,从第一个字符(假设是字符 C)开 ...
分类:
编程语言 时间:
2020-01-11 20:22:45
阅读次数:
105
题目:http://codeforces.com/contest/1285/problem/D 思路:从高位往低位建 $01\;trie$ 树,从高位 dfs 当只有一个分支,当前位为 $0$,填法唯一; 当有两个分支,当前位为 $1$,填法不唯一,则返回较小值; ...
分类:
其他好文 时间:
2020-01-11 09:17:35
阅读次数:
205
树的基本概念、特点。 二叉树的定义、概念、特点。 二叉树的遍历顺序:前序DLR、中序LDR、后序LRD(递归与迭代);层序遍历(迭代) 树的操作:插入、删除、查询、遍历、旋转等 树、森林、二叉树的关系 树的应用:哈夫曼树、红黑树、AVL树、B(B+)树、Treap树、Trie树(字典树)、伸展树、替 ...
分类:
其他好文 时间:
2020-01-08 12:40:38
阅读次数:
120
字典树概述 字典树,又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希树高。 例题: N ...
分类:
其他好文 时间:
2020-01-06 09:39:17
阅读次数:
111
Description 维护一个字符串集合,有三种事件,加入一个字符串,删除一个字符串,询问最早在哪个事件之后,以某个串为前缀的字符串数量超过$k$,强制在线。$n \le 100000,|S| \le 60$,输入中的所有字符串只会包含前$10$个小写字母。 Solution 建立$Trie$树维 ...
分类:
其他好文 时间:
2020-01-03 19:12:55
阅读次数:
85
[SDOI2017]天才黑客 (虚树+最短路) ~~(原谅我写不出简单题意)~~ 可以看到与$trie$树上的字母以及$lcp$并没有关系。。 以边作为点,可以写出一个非常简单的最短路$dis_i=min \lbrace dis_j+dep_{LCA(d_i,d_j)}+c_i|v_j=u_i\rb ...
分类:
其他好文 时间:
2019-12-25 13:13:05
阅读次数:
90
"bzoj" "Luogu" 题解时间 给你个无根trie树(你管这叫trie树?),问你选取一条有向路径能形成多少种不同字符串。 __太阳花田的结构比较特殊,只与一个空地相邻的空地数量不超过20个。 只有不超过20个叶子。__ 纯粹看你读题的,你要是读错了这句话的含义你就白给。 如何保证完整枚举这 ...
分类:
其他好文 时间:
2019-12-22 10:47:38
阅读次数:
66
题目 "传送门" 思路 笔者一开始是向trie树和贪心方面想, 但是经过机房巨佬的点拨,自己实际上就是写的哈夫曼树 "关于哈夫曼树" 我们实际上可以这样想,每一个单词就是一个点,点权就是它出现的次数 有一个很容易想到的贪心,点权越大的,他所拥有的长度就应该越小 我们就往这个方向去想,我们不需要知道每 ...
分类:
其他好文 时间:
2019-12-21 15:35:24
阅读次数:
78