字符串学习笔记 注: 本文涉及到的所有变量名均与模板中变量名同步。 "模板链接" 一、Hash 1、双Hash 2、链式Hash 3、树Hash 二、KMP 1、概述 查询字符串 $t$ 在字符串 $s$ 中出现过的所有位置。时间复杂度 $O(len(s)+len(t))$。 0 1 2 3 4 5 ...
分类:
其他好文 时间:
2018-03-27 14:51:09
阅读次数:
136
简单列了一点 1.1 基本数据结构 1. 数组 2. 链表,双向链表 3. 队列,单调队列,双端队列 4. 栈,单调栈 1.2 中级数据结构 1. 堆 2. 并查集与带权并查集 3. hash 表 自然溢出 双hash 1.3 高级数据结构 1. 树状数组 2. 线段树,线段树合并 3. 平衡树 T ...
分类:
编程语言 时间:
2018-03-01 00:38:54
阅读次数:
225
题目大意:给你一个矩阵T,问另一个矩阵P在这个矩阵T中出现过几次 可以用hash水,常数还小,双hash还卡不了 正解是把P每一行作为一个串,建一个AC自动机 用T的每一行去匹配,维护tot[i][j]表示T中左上角为i,j的T大小的矩阵,出现了T中的多少行 答案为tot[i][j] = x的i,j ...
分类:
其他好文 时间:
2018-01-21 12:25:22
阅读次数:
143
...日后会慢慢补(flag!)先来讲讲基本的 一.字符串Hash 将字符串用一个数表示,常用的写法有: 1.自然溢出 2.单Hash 3.双Hash 前两个会被精心构造的串卡掉,最后一个虽然目前卡不掉,但是出题人可以卡你常数。 所以这个算法很Naive?不是的 我们来看一道题 bzoj1014 用 ...
分类:
编程语言 时间:
2017-12-27 22:37:27
阅读次数:
241
copy from hzwer @http://hzwer.com/1234.html 侵删 1.1 基本数据结构 1. 数组 2. 链表,双向链表 3. 队列,单调队列,双端队列 4. 栈,单调栈 1.2 中级数据结构 1. 堆 2. 并查集与带权并查集 3. hash 表 自然溢出 双hash ...
分类:
编程语言 时间:
2017-01-06 15:26:09
阅读次数:
418
1.1 基本数据结构 1. 数组 2. 链表,双向链表 3. 队列,单调队列,双端队列 4. 栈,单调栈 1.2 中级数据结构 1. 堆 2. 并查集与带权并查集 3. hash 表 自然溢出 双hash 1.3 高级数据结构 1. 树状数组 2. 线段树,线段树合并 3. 平衡树 Treap 随机 ...
分类:
编程语言 时间:
2016-11-26 13:55:45
阅读次数:
164
逆元 1001 Problem A 求前缀哈希和逆元 dp 1002 Problem B 状态转移方程:dp[i] = dp[i-1] + dp[i-2],Java写大数 字典树 1003 Problem C STL 1004 Problem D map或者双hash ...
分类:
其他好文 时间:
2016-05-14 18:33:31
阅读次数:
522
1.1
基本数据结构
1.
数组
2.
链表,双向链表
3.
队列,单调队列,双端队列
4.
栈,单调栈
1.2
中级数据结构
1.
堆
2.
并查集与带权并查集
3. hash
表
自然溢出
双hash
1.3
高级数据结构
1.
树状数组
2.
线段树,线段树合并
3.
平衡树
Treap
随...
分类:
编程语言 时间:
2016-05-12 19:18:55
阅读次数:
371
简单列了一点 1.1 基本数据结构 1. 数组 2. 链表,双向链表 3. 队列,单调队列,双端队列 4. 栈,单调栈 1.2 中级数据结构 1. 堆 2. 并查集与带权并查集 3. hash 表 自然溢出 双hash 1.3 高级数据结构 1. 树状数组 2. 线段树,线段树合并
分类:
其他好文 时间:
2016-03-14 21:46:22
阅读次数:
157
通道题意:0-9字符串,区间修改,区间询问是否d周期思路:直接暴力线段树,然后HASH修改和查询,卡HASH的话就双HASH。代码:#include#includetypedef long long ll;const int N = 100007;int n, m, k, lens;char s[N...
分类:
其他好文 时间:
2015-09-23 21:10:48
阅读次数:
256