Longest Palindromic Substring
来源:互联网 发布:迅龙恢复软件注册码 编辑:程序博客网 时间:2024/06/08 13:11
Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000.
string longestPalindrome(string s) { int n = s.length(); if (n == 0) return "^$"; string T = "^"; for (int i = 0; i < n; i++) { T += "#"; T += s[i]; } T += "#$"; n = T.length(); int *P = new int[n]; int maxRight = 0; int pos = 0; for (int i = 1; i < n - 1; i++) { if (maxRight>i) { P[i] = min(maxRight - 1, P[2 * pos - i]); } else { P[i] = 0; } while (T[i + 1 + P[i]] == T[i - 1 - P[i]]) P[i]++; if ( i+P[i] > maxRight) { pos = i; maxRight = i + P[i]; } } int maxLen = 0; int centerIndex = 0; for (int i = 0; i < n - 1; i++) { if (P[i]>maxLen) { maxLen = P[i]; centerIndex = i; } } delete[] P; cout << maxLen << endl; return s.substr((centerIndex - 1 - maxLen) / 2, maxLen); }
0 0
- LeetCode: Longest Palindromic Substring
- LeetCode Longest Palindromic Substring
- LeetCode: Longest Palindromic Substring
- [Leetcode] Longest Palindromic Substring
- Longest Palindromic substring
- [LeetCode] Longest Palindromic Substring
- LeetCode5:Longest Palindromic Substring
- Leetcode : Longest Palindromic Substring
- Longest Palindromic Substring
- Longest Palindromic Substring
- [LeetCode]Longest Palindromic Substring
- leetcode Longest Palindromic Substring
- Longest Palindromic Substring
- LeetCode-Longest Palindromic Substring
- Longest Palindromic Substring
- Longest Palindromic Substring
- [LeetCode] Longest Palindromic Substring
- Longest Palindromic Substring leetcode
- Doze模式调试下AlarmManager后台运行问题
- java基础知识
- Java 抽象类、普通类、接口的区别——值得你一看的干货
- 62. Unique Paths
- 呼叫中心开发框架Asterisk
- Longest Palindromic Substring
- SSH和SSM对比总结
- python:序列
- 解决“ipheth_tx_timeout: TX timeout”
- python杂记
- jmeter插件之自定义场景图(万能场景设计)
- 什么是启发式算法(heuristic algorithm)?
- MyBatis批量操作报错:Parameter 'xxxList' not found. Available parameters are [list]
- Kubernetes1.6中配置私有 DNS 区域以及上级域名服务