• 5. 最长回文子串


    这题使用dp,dp[i][j]=1代表字符串中以i下标开始,以j下标结尾的字符串是回文子串,

    当dp[i][j] =dp[i + 1][j - 1],当s[i] == s[j]的时候,很明显,dp[i][i]一定为1,因为一个字符,一定是回文子串。

    class Solution {

        public String longestPalindrome(String s) {

           //习惯把String转为char[]

            char[] ss = s.toCharArray();

           //当前的回文子串长度为1

            String ans = s.substring(0,1);

            int maxLength = 1;

            //初始化dp数组

            int[][] dp = new int[ss.length][ss.length];

            for(int i = 0; i < dp.length; i++) {

                for(int j = 0; j < dp[i].length; j++) {

                    if(i == j) {

                        dp[i][j] = 1;

                    }

                }

            }

            int n = ss.length;

            //动态规划过程,要先遍历列,再遍历行。因为dp[row][colunm]依赖于

            //dp[row + 1][colunm - 1],所以要先遍历列,再遍历行

            for(int colunm = 1; colunm < n; colunm++) {

                for(int row = 0; row < colunm; row++) {

                    if(ss[row] == ss[colunm]) {

                        if(colunm - row <= 2) {

                            dp[row][colunm] = 1;

                        }

                        else {

                            dp[row][colunm] = dp[row + 1][colunm - 1];

                        }

                    }

                    if(dp[row][colunm] == 1) {

                        if(colunm - row + 1 > maxLength) {

                            maxLength = Math.max(maxLength, colunm - row + 1);

                            ans = s.substring(row, colunm + 1);

                        }

                    }

                

                }

            }

            return ans;

        }

    }

     

  • 相关阅读:
    使用OkHttp库爬取百度云视频详细步骤
    SAP UI5 index.html 根节点的 css 类填充逻辑
    各种ui框架的 form校验 validator获取不到value
    【Linux】《Linux命令行与shell脚本编程大全 (第4版) 》笔记-Chapter6-Linux 环境变量
    Prometheus入门与实战
    Unity 3D模型展示框架篇之ILRuntime整合与应用
    Github每日精选(第20期):Python 的交互式图形库plotly.py
    6G:典型应用、关键技术与面临挑战
    Small Tools(5) 前端项目搭建:Vue3+Vite2+TypeScript+Vue Router+Element Plus+Pinia
    14. SpringBoot项目之数据保存到数据库
  • 原文地址:https://blog.csdn.net/qq_16725749/article/details/126250709