随笔分类 -  算法学习

摘要:对于转移方程 $c(i,j)=w(i,j)+\min_d(c(i,d)+c(d+1,j))$,存在 $w(i,j)+w(i',j')\le w(i,j')+w(i',j)(i\le i'\le j\le j'$ 如何快速求其答案。 引理一:$w(i,j)+w(i',j')\le w(i,j')+w( 阅读全文
posted @ 2023-06-02 21:06 jucason_xu 阅读(26) 评论(0) 推荐(0)
摘要:Z 函数是的意义是对于字符串的后缀 $i$,其最长的前缀使得存在原串的一个前缀和它相同。 我个人认为 Z 函数是简单于 KMP 的,因为 KMP 的思想是利用前面的答案递归调用计算新的位置,而 Z 函数是简单的递推,只需要一个原先计算的结果就能得出答案,不需要递归。 Z 函数的核心思想是匹配段思想, 阅读全文
posted @ 2023-05-30 10:21 jucason_xu 阅读(600) 评论(0) 推荐(1)
摘要:就我学过的所有处理字符串的算法(包括匹配算法、回文算法、后缀算法、字符串哈希),都离不开两个恒定的主题:递推构建和压缩信息。这一特征很明显和字符串的性质有关:子串众多,而子串之间互相关联性强。字符串的算法大多数都是 $O(n)$ 的时间或空间复杂度,和“字符串本身包含的信息只有 $O(n)$,只是它 阅读全文
posted @ 2023-05-29 12:40 jucason_xu 阅读(41) 评论(0) 推荐(0)