leetcode Longest Palindromic Substring
2015-03-31 09:59
411 查看
想了一晚上,觉得 这基本上是最优解法了。。
string palindromic(string s) { int i, i2, j, n = s.length(), tmp; if (n < 2 || (n == 2 && s[0] == s[1])) { return s; } int max = 0, start = 0; for (i = 0; i < n - 1; i++) { i2 = i; while (s[i2] == s[i2 + 1]) { i2++; } tmp = (max - i2 + i)/2; if (i2 + tmp >= n || i - tmp < 0 || s[i2 + tmp] != s[i-tmp]) { i = i2; continue; } for (j = 1;; j++) { if (i < j || i2 + j > n - 1 || s[i - j] != s[i2 + j]) { break; } } if (2 * (j - 1) + i2 - i > max) { max = 2 * (j - 1) + i2 - i; start = i - j + 1; } i = i2; } return s.substr(start, max + 1); }
相关文章推荐
- LeetCode-005 Longest Palindromic Substring
- leetcode [005] : Longest Palindromic Substring
- LeetCode - Longest Palindromic Substring
- Leetcode | Longest Palindromic Substring
- 【leetcode】Longest Palindromic Substring
- LeetCode 5:Longest Palindromic Substring
- LeetCode 3.5 Longest Palindromic Substring
- [Leetcode 5, Medium] Longest Palindromic Substring
- leetcode Longest Palindromic Substring
- 【LeetCode】LeetCode——第5题: Longest Palindromic Substring
- LeetCode.Problem 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 5. Longest Palindromic Substring
- 【leetcode】Longest Palindromic Substring
- [LeetCode] 5、Longest Palindromic Substring
- Leetcode日记(4)---Longest Palindromic Substring