leetcode5最长回文子串

思路

s[3][7] 如果是回文串,那么s[4][6]一定也是,然后在需要判断两个顶点

需要考虑两个特殊情况

  1. abcd a、b、c、d都可以
  2. aa

代码

复制代码
public String longestPalindrome(String s) {
        int[][] map = new int[1001][1001];
        int[] result = new int[]{0,0};
        for (int i = 0; i < s.length(); i++) {
            map[i][i] = 1;
        }
        for (int i = 0; i+1 < s.length(); i++) {
            if (s.charAt(i) == s.charAt(i+1)){
                result[0] = i;
                result[1] = i+1;
                map[i][i+1] = 1;
            }
        }
        for (int i = 2 ; i < s.length(); i++){
            for (int j = 0; j+i < s.length(); j++) {
                if (map[j+1][j+i-1] == 1 && s.charAt(j) == s.charAt(j+i)){
                    result[0] = j;
                    result[1] = j+i;
                    map[j][j+i] = 1;
                }
            }
        }
        return s.substring(result[0], result[1]+1);
    }
相关推荐
czt_java10 小时前
线程的几种状态
java·开发语言
y = xⁿ10 小时前
JUC八股:线程池及ThreadLocal
java·开发语言
月落归舟10 小时前
Spring Bean作用域以及生命周期
java·spring
01_ice10 小时前
Java多态
java·开发语言
飞翔中文网10 小时前
读RESTful有感,关于Java接口设计规范的说明
java·restful·设计规范
Byron__10 小时前
Spring核心面试知识点(IoC/Bean生命周期/AOP/事务)
java·spring·面试
wuweijianlove10 小时前
算法中的记忆化思想与重复子问题优化的技术5
算法
AI人工智能+电脑小能手10 小时前
【大白话说Java面试题 第78题】【Mysql篇】第8题:解释下最左前缀原则?
java·开发语言·数据库·mysql·面试
一起逃去看海吧10 小时前
对接LangSmith
java·前端·数据库
wyhwust10 小时前
web应用技术-第一次课后作业
java·前端·数据库