随笔分类 -  字符串

摘要:定义 哈希,是一个十分无脑判断某两端字符串相同的方法(当然为了把保守我们也可以使用pb_ds库里的gb_hash_table)。 我通常使用哈希方法是 f(x)=f(x1)×b+sx 。 转化成多项式形式那也就是: \[f(x)=\sum_{i=1}^{x}s_i\times 阅读全文
posted @ 2024-11-29 09:55 tyccyt 阅读(5) 评论(0) 推荐(0) 编辑
摘要:简介 定义一个长度为 n 的字符串 s,定义 zi 表示 ss[i,n]lcp(最长公共前缀),称 zsZ 函数。 朴素算法 暴力枚举,时间复杂度:O(n2) 线性算法 我们首先考虑顺次处理 阅读全文
posted @ 2024-11-04 22:02 tyccyt 阅读(110) 评论(0) 推荐(0) 编辑
摘要:从某种方面来说,Manacher 算法是朴素 O(n2) 暴力算法的优化。。。 那就得先了解一下 Manacher 的朴素算法 朴素算法 枚举中心点并不断向外展开(例如:\([i,i]\rightarrow [i+1,i+1]\rightarrow [i+2,i+2]\rightarrow 阅读全文
posted @ 2024-10-21 14:43 tyccyt 阅读(7) 评论(0) 推荐(0) 编辑
摘要:求最长公共前后缀(前置知识) for(int i=2,k=0;i<=m;i++) { while(k&&t[k+1]!=t[i])k=nxt[k]; if(t[k+1]==t[i])k++; nxt[i]=k; } 这种比较有性质的东西,推一推就懂了(感觉比较简单)。就是利用之间处理好的border 阅读全文
posted @ 2024-08-16 19:08 tyccyt 阅读(5) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示