Leetcode-5 最长回文子串

作者: itbird01 | 来源:发表于2021-10-01 17:17 被阅读0次

5. 最长回文子串

解题思路

1.双层for循环,动态规划
2.i、j分别循环,只记录最大值和最大长度
3.使用substring进行字符串截取
4.判断长度是否大于目前result的长度,如果大于,则判断是否为回文字符串(从两边到中间,去判断是否每个字符相等)
5.如果4满足,则更新result

后续需要总结学习的知识点

时间复杂度和空间复杂度需要后续优化


image.png
##解法1
class Solution {
    public static String longestPalindrome(String s) {
        String result = "";
        for (int i = 0; i < s.length(); i++) {
            for (int j = i; j < s.length(); j++) {
                String temp = s.substring(i, j + 1);
                if (temp.length() >= result.length() && isPalindrome(s, i, j)) {
                    result = temp;
                }
            }
        }
        return result;
    }

    public static boolean isPalindrome(String s, int start, int end) {
        for (int i = start, j = end; i <= j; i++, j--) {
            if (s.charAt(i) != s.charAt(j)) {
                return false;
            }
        }
        return true;
    }
}

相关文章

  • LeetCode-5 最长回文子串

    题目:5. 最长回文子串 难度:中等 分类:字符串 解决方案:双指针 今天我们学习第5题最长回文子串,这是一个字符...

  • Leetcode-5:最长回文子串

    描述: 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 1:输入:...

  • Leetcode-5 最长回文子串

    5. 最长回文子串[https://leetcode-cn.com/problems/longest-palind...

  • 最长回文子串

    最长回文子串——Manacher 算法 1. 问题定义 最长回文字符串问题:给定一个字符串,求它的最长回文子串长度...

  • 字符串算法

    最长公共前缀 最长回文串 最长回文子序列 最长公共子串 反转单词顺序列 反转字符串 字符串转数字 IP-int互转

  • 打卡-最长回文子串

    最长回文子串(中等)

  • 最长回文子序列

    该问题区别于最长回文子串,子串必须是连续的,而子序列则可以跳跃,例如AABCAA的最长回文子串为AA,但是它的最长...

  • Manacher算法

    最长回文子串问题# 给定一个字符串,找出最长的回文子串,如"waabwswbfd",则最长子串为bwsb. 中心试...

  • 最长回文子串问题—Manacher算法

    最长回文串问题是一个经典的算法题。 0. 问题定义 最长回文子串问题:给定一个字符串,求它的最长回文子串长度。如果...

  • LeetCode 第647题:回文子串

    1、前言 2、思路 此题与最长回文子串很像,只不过那个是求最长的回文子串,而这个是求回文子串的数目。但是他们的解法...

网友评论

    本文标题:Leetcode-5 最长回文子串

    本文链接:https://www.haomeiwen.com/subject/ejnngltx.html