1 public class Solution { 2 /** 3 * @param s input string 4 * @return the longest palindromic substring 5 */ 6 public static String longestPalindrome(String s) { 7 if (s == null || s.isEmpty()){ 8 return null; 9 }10 int left = 0;11 int right = 0;12 int len = s.length();13 int longest = 0;14 for (int i = 0; i < len; i++){15 for (int j = i + 1; j <= len; j++){16 String cub = s.substring(i, j);17 if (isPalindroma(cub) && cub.length() > longest){18 longest = cub.length();19 left = i;20 right = j;21 }22 }23 }24 String result = s.substring(left, right);25 return result;26 27 }28 public static boolean isPalindroma(String s){29 if (s == null || s.isEmpty()){30 return false;31 }32 int len = s.length() - 1;33 for (int i = 0; i <= len; i++){34 if (s.charAt(i) != s.charAt(len - i)){35 return false;36 }37 }38 return true;39 }40 }