• 5. 最长回文子串


    1. 最长回文子串(leetcode 中等题)
      给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。

    示例 1:

    输入: "babad"
    输出: "bab"
    注意: "aba" 也是一个有效答案。
    示例 2:

    输入: "cbbd"
    输出: "bb"

    class Solution {
        public String longestPalindrome(String s) {
            String ans = "";
            for(int i=0;i<s.length();i++){
                String ans1 = palindrome(s,i);
                ans = ans1.length()>ans.length()?ans1:ans;
            }
            for(int i=0;i<s.length();i++){
                String ans2 = palindrome1(s,i);
                ans = ans2.length()>ans.length()?ans2:ans;
            }
            return ans;
        }
    
        
        public static String palindrome(String s, int index) {
            String ans = s.substring(index, index + 1);
            int i = 1;
            while (index - i >= 0 && index + i < s.length()) {
                if (s.charAt(index - i) == s.charAt(index + i)) {
                    ans = s.substring(index - i, index + i + 1);
                    i++;
                }else{
                    break;
                }
            }
            return ans;
        }
    
        public static String palindrome1(String s, int index) {
            String ans = s.substring(index, index + 1);
            int i = 1;
            while (index - i + 1 >= 0 && index + i < s.length()) {
                if (s.charAt(index - i + 1) == s.charAt(index + i)) {
                    ans = s.substring(index - i + 1, index + i + 1);
                    i++;
                } else {
                    return ans;
                }
            }
            return ans;
        }
    }
    
  • 相关阅读:
    Github.Git
    android 环境的配置
    如何在Virtual box 下安装Mac os
    如何下载google play商店里面的app?
    神奇的网站
    pycharm使用总结
    软件测试 -- SQL注入测试
    win10 下mysql环境变量配置
    NStask
    在pycharm 中使用 GitHub:
  • 原文地址:https://www.cnblogs.com/ZCWang/p/12885527.html
Copyright © 2020-2023  润新知