昨天看了AC自动机和后缀数组的两节,
后缀数组就是把一个文本串的所有后缀按字典序从小到大排放的数组。
AC自动机和后缀数组都可以处理多模板的文本匹配问题。
AC自动机需要事先知道所有的模板,然后对于一个在线输入的文本串进行多模板匹配,即模板一定要全部事先知道,而需要匹配的文本可以后面输入。 而后缀数组需要事先知道整个文本串,模板可以一个一个的动态输入。
后缀数组我看了几方面的题:
找字符串的不同子串个数;
求两个串的最长公共连续子串的长度;
求n个字符串中超过某某个字符串中的最长公共连续字串是什么,长度为多少如果有多解,再按字典序输出;
找可重叠(或不重叠)至少出现K次的子串;
剩下的还有Treap树和Splay Treap树没有看,昨天想瞄一下的,但我发现我对数据结构的兴趣已经被后两节磨光啦。也没看下去,所以我决定今天先暂时开图论这一章,毕竟我们队没人看这一章,学无聊了再穿插着复习数据结构部分的。
好啦,那就去看图论部分啦 。