一、什么是后缀数组: 字符串后缀Suffix 指的是从字符串的某个位置开始到其末尾的字符串子串。后缀数组 Suffix Array(sa) 指的是将某个字符串的所有后缀按字典序排序之后得到的数组,不过数组中不直接保存所有的后缀子串,只要记录后缀的起始下标就好了。 比如下面在下面这张图中,sa[8] ...
分类:
编程语言 时间:
2019-01-26 11:03:08
阅读次数:
247
给定只含 "I"(增大)或 "D"(减小)的字符串 S ,令 N = S.length。 返回 [0, 1, ..., N] 的任意排列 A 使得对于所有 i = 0, ..., N-1,都有: 如果 S[i] == "I",那么 A[i] < A[i+1] 如果 S[i] == "D",那么 A[ ...
分类:
其他好文 时间:
2019-01-24 14:35:45
阅读次数:
233
什么是KMP算法: KMP算法是一种改进的字符串匹配算法,由D.E.Knuth,J.H.Morris和V.R.Pratt同时发现,因此人们称它为克努特——莫里斯——普拉特操作(简称KMP算法)。KMP算法的关键是利用匹配失败后的信息,尽量减少模式串与主串的匹配次数以达到快速匹配的目的。具体实现就是实 ...
分类:
编程语言 时间:
2019-01-24 01:17:15
阅读次数:
220
一、正则表达式在文本处理中的常用: 1.表达文本类型的特征(病毒、入侵等) 2.同时查找或替换一组字符串 3.匹配字符串的全部或部分(主要) 二、正则表达式的常用操作符 三、经典正则表达式实例 (([1-9]?\d|1\d{2}|2[0-4]\d|25[0-5]).){3} ([1-9]?\d|1\ ...
分类:
其他好文 时间:
2019-01-23 17:30:51
阅读次数:
173
以 grep 程序查找文本是相当方便的。在 POSIX 系统上,grep 可以在两种正则表达式风格中选择一种,或是执行最简单的字符串匹配。 传统上,有三种程序,可以用来查找整个文本文件: grep 最早的文本匹配程序,使用 POSIX定义的基本正则表达式。 egrep 扩展式 grep 。这个程序使 ...
分类:
其他好文 时间:
2019-01-23 00:18:39
阅读次数:
167
题目描述 给定N个字符串(第i个字符串长度为Mi,字符串内包含数字、大小写字母,大小写敏感),请求出N个字符串中共有多少个不同的字符串。 输入输出格式 输入格式 第一行包含一个整数N,为字符串的个数。 接下来N行每行包含一个字符串,为所提供的字符串。 输出格式 输出包含一行,包含一个整数,为不同的字 ...
分类:
其他好文 时间:
2019-01-19 11:10:16
阅读次数:
218
响应断言可以让你添加匹配字符串来匹配请求和响应的各个字符串。 匹配字符串可以是1.Contains和Matches正则表达式;2.Equals和SubString文本类型,大小写敏感。 Apply to:应用范围,一般勾选Main sample only,一般一个请求实际上就是发送一个请求,但是有些 ...
分类:
其他好文 时间:
2019-01-18 20:12:13
阅读次数:
303
题目描述 题解: $FFT$字符串匹配。 但是容错常数怎么处理? 其实很简单,比如说我们正在匹配$'A'$,原式是$$AGCTATCGACA$$容错常数$k=1$, 在我们眼中$'A'$可以这样匹配:$$AA-AAA-AAAA$$ 因为$'A'$在这些地方都是合法的。 字符集为$4$就做$4$遍。 ...
分类:
其他好文 时间:
2019-01-17 21:23:11
阅读次数:
163
众所周知$FFT$是一个功能多但是不开$O2$常数吓人的算法。 这里我来口胡一下$FFT$如何搞字符串匹配。 其实我第一次是字符暴力匹配$52$次,结果$T$了一下午。 后来上网找发现有个更好的算法。 如果有两个数判相等,我们可以相减,判断是否为$0$; 但是字符串匹配相当于多对数判相等,相减加和肯 ...
分类:
其他好文 时间:
2019-01-17 21:10:36
阅读次数:
245
问:什么是数据结构? 答:一组数据的存储结构。 问:什么是算法? 答:操作数据的一组方法。 数据结构和算法是相辅相成的,数据结构为算法服务,算法要作用在特定的数据结构之上。下面的数据结构和算法的思维导图: 其中有20个最常用的、最基础的数据结构与算法: 10个数据结构:数组、链表、栈、队列、散列表、 ...
分类:
编程语言 时间:
2019-01-17 15:06:46
阅读次数:
301