题解 | #最长回文子串#

最长回文子串

http://www.nowcoder.com/practice/b4525d1d84934cf280439aeecc36f4af

import java.util.*;

public class Solution {
    public int getLongestPalindrome(String A, int n) {
        // write code here
      //给个初始最大长度,如果比我大则交换
        int res = 0;
      //暴力判断
        for(int i=0;i<=n;i++){
          //注意由于截取字符串取头不取尾,所以可以=n
            for(int j=i+1;j<=n;j++){
                String str = A.substring(i,j);
                if(isTrue(str)){
                    res = Math.max(j-i,res);
                }
            }
        }
        return res;
        
    }
  
  //传入字数串参数,判断字符串是否为回文串
    public boolean isTrue(String str){
        int start,end;
        start = 0;
        end = str.length()-1;
        char[] arr = str.toCharArray();
        boolean flag = true;
        while(start<end){
          //字符串如果有两个对称的字符不相等则不是回文串
            if(arr[start]!=arr[end]){
               flag = false;
                break;
            }
            start++;
            end--;
        }
        return flag;
    }
}
全部评论

相关推荐

Pandaileee:校友加油我现在也只有一个保底太难了
点赞 评论 收藏
分享
三年之期已到我的offer快到碗里来:9硕都比不上9本
点赞 评论 收藏
分享
10-30 10:16
南京大学 Java
龚至诚:给南大✌️跪了
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务