manacher算法
2015-10-11 21:26
295 查看
求最大回文子串
先对字符串 加特殊字符处理
O(N) pR最多被更新2n次
PArr[i]:以i为中心的最大回文子串的半径
pR: 最右回文子串将要到达的位置 随时更新
index:[b]最右回文子串的中心 随时更新[/b]
求PArr[i]的时候借助了前面的信息
第一类:i被包括在pR里面
则看与i对应的i1的回文子串是否被包含在pR里面 这里引申了三种情况 不管是否被包含 两种情况都可以直接算出来 除非重合
PArr[i]=PArr[2*index-i]
PArr[i]=pR-i
第二类:i不被包括在pR里面
先对字符串 加特殊字符处理
O(N) pR最多被更新2n次
PArr[i]:以i为中心的最大回文子串的半径
pR: 最右回文子串将要到达的位置 随时更新
index:[b]最右回文子串的中心 随时更新[/b]
求PArr[i]的时候借助了前面的信息
第一类:i被包括在pR里面
则看与i对应的i1的回文子串是否被包含在pR里面 这里引申了三种情况 不管是否被包含 两种情况都可以直接算出来 除非重合
PArr[i]=PArr[2*index-i]
PArr[i]=pR-i
第二类:i不被包括在pR里面
相关文章推荐
- Java实现进度条
- vmware实现nat上网
- Windows 设置护眼色的两种方法
- 用鼠标在窗口中画方形
- 关于最近找工作的反思
- 《编写有效用例》读书笔记1
- MyBatis配置一对一
- php启用zend guard loader扩展问题
- HDU4460(最短路)
- java.lang.SecurityException: Need BLUETOOTH ADMIN permission: Neither user 10047 nor current process
- 【Python之旅】第六篇(四):Python多线程锁
- 【Python之旅】第六篇(四):Python多线程锁
- c/c++ 引用计数
- Scala——总计架构目录
- The Importance of Algorithms
- 用widthStep的方法来增加某范围的像素----与imageROI对比
- onItemLongClick事件的监听
- 正则表达式(转载)
- LeetCode OJ:Multiply Strings (字符串乘法)
- 程序化交易生态图谱2015年7月版