Given a string S, find the longest palindromic substring in S. You may assume that the maximum length of S is 1000, and there exists one unique longest palindromic substring.
代碼如下:(超時)
1 public class Solution {
2 public String longestPalindrome(String s) {
3 if(s.length()==1||s.length()==0)
4 return s;
5
6 String t=" ",sub=" ";
7 int count=0,max=0;
8 char[] ss=s.toCharArray();
9 for(int i=0;i<ss.length;i++)
10 {
11 if(ss.length-i+1<=max)
12 return t;
13 for(int j=ss.length-1;j>i;j--)
14 {
15 if(ss[i]==ss[j]){
16 sub=s.substring(i,j+1);
17 count=j-i+1;
18 if(isPalindrome(sub)&&count>max)
19 {
20 t=sub;
21 max=count;
22 break;
23 }
24 }
25 }
26 }
27 return t;
28
29 }
30 public boolean isPalindrome(String a){
31 char[] aa=a.toCharArray();
32 int i=0,j=aa.length-1;
33 while(i<=j)
34 {
35 if(aa[i]==aa[j])
36 {i++;j--;}
37 else return false;
38 }
39 return true;
40 }
41 }