[leetcode刷题系列]Longest Palindromic Substring
来源:互联网 发布:天价域名排行 编辑:程序博客网 时间:2024/06/06 09:29
这个题至少是存在nlogn的解法的,利用后缀数组。是否存在O(n)的解法已经不记得了。印象中似乎是有O(n)。有兴趣的同学可以去研究下。
另外这个题还可以利用二分+哈希的做法去解,复杂度同样是nlogn.
由于nlogn的写法太长了。 而这个题目的n最大规模只是1000而已。所以就简单的优化了下。用了最坏情况下n^2的解法。
const static int MAXN = 1000 + 10;string s;int dp[MAXN][MAXN];bool is(int i, int j){ if(i >= j) return true; if(dp[i][j] != -1) return dp[i][j]; if(s[i] != s[j]) return dp[i][j] = 0; return dp[i][j] = is(i + 1, j - 1);}class Solution {public: string longestPalindrome(string s) { // Start typing your C/C++ solution below // DO NOT write int main() function if(s.size() <= 1) return s; ::s = s; memset(dp, 0xff, sizeof(dp)); for(int i = s.size(); i >= 1; -- i) for(int j = 0; j + i - 1 < s.size(); ++ j) if(is(j, j + i - 1)) return s.substr(j, i); return s.substr(0, 1); }};
- [leetcode刷题系列]Longest Palindromic Substring
- leetcode系列(33)Longest Palindromic Substring
- LeetCode题解系列--5. Longest Palindromic Substring
- LeetCode: Longest Palindromic Substring
- LeetCode Longest Palindromic Substring
- LeetCode: Longest Palindromic Substring
- [Leetcode] Longest Palindromic Substring
- [LeetCode] Longest Palindromic Substring
- Leetcode : Longest Palindromic Substring
- [LeetCode]Longest Palindromic Substring
- leetcode Longest Palindromic Substring
- LeetCode-Longest Palindromic Substring
- [LeetCode] Longest Palindromic Substring
- Longest Palindromic Substring leetcode
- LeetCode Longest Palindromic Substring
- LeetCode - Longest Palindromic Substring
- LeetCode -- Longest Palindromic Substring
- LeetCode | Longest Palindromic Substring
- RTSP点播消息流程实例(客户端:VLC, RTSP服务
- 字母小游戏
- 6174问题
- uva 11520 Fill the Square(DFS)
- 算法题求解:从1~N中求某个字符出现次数
- [leetcode刷题系列]Longest Palindromic Substring
- C#与Java对比学习:类型判断、类与接口继承、代码规范与编码习惯、常量定义
- goAhead 2.5嵌入式web服务器移植到arm9 2440 + linux中
- 求两个字符串的公共子串
- Coding the Matrix Week 2 The Vector Space作业
- Linux下chkconfig命令详解
- 第70天的交易(2013-7-31)(-50)(-144)
- NIO入门教程
- goAhead 2.5嵌入式web服务器移植到arm9 2440 + linux中