【LeetCode】 005. Longest Palindromic Substring
2016-12-28 07:57
489 查看
Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000.
Example:
Example:
public class Solution {
private int lower, maxLen;
public String longestPalindrome(String s) {
if (s.length() < 2) {
return s;
}
char[] array = s.toCharArray();
for (int i = 0; i < s.length() - 1; i++) {
helper(array, i, i);
helper(array, i, i + 1);
}
return s.substring(lower, lower + maxLen);
}
private void helper(char[] array, int low, int high) {
while (low >= 0 && high < array.length && array[low] == array[high]) {
low--;
high++;
}
if (high - low - 1 > maxLen) {
lower = low + 1;
maxLen = high - low - 1;
}
}
}
Example:
Input: "babad" Output: "bab" Note: "aba" is also a valid answer.
Example:
Input: "cbbd" Output: "bb"
public class Solution {
private int lower, maxLen;
public String longestPalindrome(String s) {
if (s.length() < 2) {
return s;
}
char[] array = s.toCharArray();
for (int i = 0; i < s.length() - 1; i++) {
helper(array, i, i);
helper(array, i, i + 1);
}
return s.substring(lower, lower + maxLen);
}
private void helper(char[] array, int low, int high) {
while (low >= 0 && high < array.length && array[low] == array[high]) {
low--;
high++;
}
if (high - low - 1 > maxLen) {
lower = low + 1;
maxLen = high - low - 1;
}
}
}
相关文章推荐
- LeetCode 005: Longest Palindromic Substring
- [LeetCode 解题报告]005.Longest Palindromic Substring
- LeetCode 005 Longest Palindromic Substring
- LeetCode 005. Longest Palindromic Substring
- [LeetCode]005-Longest Palindromic Substring
- 【LeetCode-面试算法经典-Java实现】【005-Longest Palindromic Substring(最长回文子串)】
- LeetCode 005 Longest Palindromic Substring
- [LeetCode]题解(python):005-Longest Palindromic Substring
- 【LeetCode】005 Longest Palindromic Substring 最长的回文子字符串
- LeetCode-005 Longest Palindromic Substring
- LeetCode005__Longest Palindromic Substring
- 【LeetCode】005.Longest Palindromic Substring
- 【JAVA、C++】LeetCode 005 Longest Palindromic Substring
- Leetcode_005_Longest_Palindromic_Substring
- leetcode-005 Longest Palindromic Substring
- 2017-09-07 LeetCode_005 Longest Palindromic Substring
- leetcode 005 Longest Palindromic Substring(java)
- leetcode Longest Palindromic Substring 005
- [LeetCode]-005-Longest Palindromic Substring
- LeetCode-005 Longest Palindromic Substring