LeetCode5:最长回文子串

参考链接:
🔗:【5. 最长回文子串 Longest Palindromic Substring【LeetCode 力扣官方题解】-哔哩哔哩】

具体代码

java 复制代码
class Solution {
    public String longestPalindrome(String s) {
        int i=0,j,k=0,n=s.length(),max_len=1,begin=0;
        char[] ch = s.toCharArray();
        boolean[][] dp=new boolean[n][n];
        if(s==null||n==0){
            return null;
        }
        if(n==1){
            return s;
        }
        for(j=1;j<n;++j){
            for (i=0;i<j;++i){
                if(ch[i]!=ch[j]){
                    dp[i][j]=false;
                }else{
                    if(j-i<=2){
                        dp[i][j]=true;
                    }else{
                        dp[i][j]=dp[i+1][j-1];
                    }
                    if(dp[i][j]==true&&j-i+1>max_len){
                        max_len=j-i+1;
                        begin=i;
                    }
                }
            }

        }
        return s.substring(begin,begin+max_len);
    }
    
}
相关推荐
楼田莉子1 小时前
C++算法学习专题:前缀和
c++·学习·算法·leetcode·蓝桥杯
HalvmånEver3 小时前
盛最多水的容器:双指针法的巧妙运用(leetcode 11)
c++·学习·leetcode
YSRM6 小时前
Leetcode+Java+动态规划IV
java·leetcode·动态规划
YoungHong199213 小时前
面试经典150题[019]:最后一个单词的长度(LeetCode 58)
leetcode·面试·职场和发展
圣保罗的大教堂21 小时前
leetcode 3446. 按对角线进行矩阵排序 中等
leetcode
Swift社区1 天前
Swift 解法详解:LeetCode 367《有效的完全平方数》
开发语言·leetcode·swift
君万1 天前
【LeetCode每日一题】21. 合并两个有序链表 2. 两数相加
算法·leetcode·链表
熬了夜的程序员2 天前
【LeetCode】30. 串联所有单词的子串
算法·leetcode·链表·职场和发展·深度优先
一支鱼2 天前
leetcode-1-两数之和
算法·leetcode·typescript
睡不醒的kun2 天前
leetcode算法刷题的第二十一天
数据结构·c++·算法·leetcode·职场和发展·回溯算法·回归算法