1.Longest Palindromic Substring
最长回文之串
Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000.
例:babad——>bab,aba;cbbd——>bb
public class Solution{
int maxLen;
int lo;//定义起始最大子串长度和起始位置索引
public String longestPalindrome(String s){
int len=s.length();
if(len<2) return s;
for(int i=0;i<len-1;i++){
//从0开始搜索,分两种情况bb和aba
extendPalindrome(s,i,i);
extendPalindrome(s.i,i+1);
}
}
public void extendPalindrome(Srting s,int j,int k){
while(j>=0 && k<s.length() && s.charAt(j)==s.charAt(k)){
//遇到相等,前后下标各移一位,继续比较,直到结束
j--;
k++;
}
if(maxLen < k-j-1){
maxLen=k-j-1;//当前的位置长度比max大,交换并记录起始位置索引
lo=j+1;
}
}
}