
通俗易懂系列
bestsort
这个作者很懒,什么都没留下…
展开
-
线段树 数据结构详解与模板
转载请注明出处bestsort.cn线段树是一个查询和修改复杂度都为log(n)的数据结构。主要用于数组的单点修改&&单点查询&&区间求和&&区间修改.另外一个拥有类似功能的是树状数组,但是树状数组最常用的是单点修改&&区间求和.线段树完全涵盖树状数组所有功能具体区别和联系如下:1.两者在复杂度上同级, 但...原创 2018-06-26 16:08:08 · 1116 阅读 · 0 评论 -
树状数组 数据结构详解与模板(可能是最详细的了)
目录转载请注明出处:bestsort.cn树状数组基础单点更新:区间查询:高级操作求逆序对操作原理求区间最大值区间修改+单点查询查询修改区间修改+区间查询查询修改二维树状数组单点修改+区间查询区间修改 + 单点查询区间修改 + 区间查询转载请注明出处:bestsort.cn树状数组基础树状数组是一个...原创 2018-06-25 08:49:41 · 75919 阅读 · 59 评论 -
Manacher算法详解及模板(求解最长回文串)
Manacher用于求解最长回文子串。所谓回文串,便是"abccba"或是斗鸡山上山鸡斗这一类的,你会发现从左到右和从右到左读都是同样的内容。而最长回文子串便是求出给定串中最长的那一个回文串。 在没了解Manacher之前,我们可以直接暴力枚举,时间复杂度O(n3)O(n3)O(n^3),也可以原创 2018-08-15 20:58:42 · 8769 阅读 · 2 评论 -
AC自动机 算法详解(图解)及模板
ac自动机,就是在tire树的基础上,增加一个fail指针,如果当前点匹配失败,则将指针**转移**到fail指针指向的地方,这样就不用回溯,而可以路匹配下去了.(当前模式串后缀和fail指针指向的模式串部分前缀相同,如`abce`和`bcd`,我们找到`c`发现下一个要找的不是`e`,就跳到`bcd`中的`c`处,看看此处的下一个字符(`d`)是不是应该找的那一个)原创 2018-10-05 22:17:32 · 115366 阅读 · 72 评论