题解 | #最长回文子串#

最长回文子串

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

import java.util.*;

public class Solution {
    public int getLongestPalindrome(String A, int n) {
        // write code here
        boolean[][] dp = new boolean[n][n];
        for(int i=0;i<n;i++){
            dp[i][i] = true; // 所有的单个字符都是回文串
        }
        int maxLen = 0;
        for(int i=n-1;i>=0;i--){
            for(int j=i+1;j<n;j++){
                boolean flag = dp[i+1][j-1];
                if(A.substring(i, j+1).length()<=3){
                    dp[i][j] = A.substring(i, i+1).equals(A.substring(j, j+1));
                } else {
                    dp[i][j] = A.substring(i, i+1).equals(A.substring(j, j+1)) && flag;
                }
                if(dp[i][j]){
                    maxLen = Math.max(maxLen, j-i+1);
                }

            }
        }
        return maxLen;
    }
}
全部评论

相关推荐

06-14 19:09
门头沟学院 Java
darius_:给制造业搞的,什么物料管理生产管理,设备管理点检,最最关键的就是一堆报表看板。个人觉得没啥技术含量都是些基本的crud,但是业务很繁琐那种
点赞 评论 收藏
分享
05-25 10:45
门头沟学院 Java
Frank_zhan...:没实习一个项目肯定不够,可以再做一个轮子,技术栈再补一个mq,微服务,整体再换个简历模板,暑期尽量再找一个日常实习
无实习如何秋招上岸
点赞 评论 收藏
分享
06-27 15:15
长安大学 Java
哈哈哈,你是老六:这种就是培训机构骗钱的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务