首页 > 其他分享 >5. 最长回文子串

5. 最长回文子串

时间:2022-10-24 00:23:54浏览次数:51  
标签:子串 expandAroundCenter right return start maxLength 回文 最长 left

给你一个字符串 s,找到 s 中最长的回文子串。

示例 1:

输入:s = "babad"
输出:"bab"
解释:"aba" 同样是符合题意的答案。
示例 2:

输入:s = "cbbd"
输出:"bb"

提示:

1 <= s.length <= 1000
s 仅由数字和英文字母组成

 

 1 /**
 2  *  @param {string} s
 3  *  @return {string}
 4  */
 5 var longestPalindrome = function(s) {
 6     if (s.length < 2) {
 7         return s;
 8     }
 9     let start = 0;
10     let maxLength = 1;
11 
12     function expandAroundCenter(left, right) {
13         while (left >= 0 && right < s.length && s[left] === s[right]) {
14             if (right - left + 1 > maxLength) {
15                 maxLength = right - left + 1;
16                 start = left;
17             }
18             left--;
19             right++;
20         }
21     }
22     for (let i = 0; i < s.length; i++) {
23         expandAroundCenter(i - 1, i + 1);
24         expandAroundCenter(i, i + 1);
25     }
26     return s.substring(start, start + maxLength);
27 };

 

标签:子串,expandAroundCenter,right,return,start,maxLength,回文,最长,left
From: https://www.cnblogs.com/icyyyy/p/16820144.html

相关文章

  • 找最长公共前缀
    前言:在python中,比较两个字符串的大小,比较的是首个字母的ascll码值,如果首个字母的值相同,就以此类推,继续往下进行比较,直到得出结果为止1、利用字符串比较大小,找出最长公共前......
  • #yyds干货盘点# LeetCode 腾讯精选练习 50 题:最长公共前缀
    题目:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。 示例1:输入:strs=["flower","flow","flight"]输出:"fl"示例2:输入:strs=["do......
  • 【Python】第3章-21 判断回文字符串
    输入一个字符串,判断该字符串是否为回文。回文就是字符串中心对称,从左向右读和从右向左读的内容是一样的。输入格式:输入在一行中给出一个不超过80个字符长度的、以回车结......
  • #yyds干货盘点# LeetCode 腾讯精选练习 50 题: 回文数
    题目:给你一个整数x,如果x是一个回文整数,返回true;否则,返回false。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121是回文,而123不是。 示例1:输入......
  • 771. 字符串中最长的连续出现的字符
    文章目录​​Question​​​​Ideas​​​​Code​​Question求一个字符串中最长的连续出现的字符,输出该字符及其出现次数,字符串中无空白字符(空格、回车和tab),如果这样的字......
  • 【算法】算法练习之最长有效括号和两个删除
    算法内容1.最长有效括号,题目类型:栈,字符串,比较困难2.删除有序数组中的重复项,题目类型:数组,双指针,比较简单3.删除有效括号,题目类型:字符串,优先搜索,比较困难题目描述第一......
  • 最长回文子串
    输入:s="babad"输出:"bab"解释:"aba"同样是符合题意的答案。classSolution:deflongestPalindrome(self,s:str)->str:palindrome=""#中心......
  • AcWing 895.最长上升子序列Ⅰ
    题目链接:http://www.acwing.com/problem/content/897/浅浅复习放AC代码1#include<bits/stdc++.h>2usingnamespacestd;34constintN=1010;5intn;......
  • #yyds干货盘点# LeetCode 腾讯精选练习 50 题:最长回文子串
    题目:给你一个字符串s,找到s中最长的回文子串。 示例1:输入:s="babad"输出:"bab"解释:"aba"同样是符合题意的答案。示例2:输入:s="cbbd"输出:"bb"代码实现:publicclassSo......
  • 基础结构:链表 回文链表
    1.问题描述给你一个单链表的头节点head,请你判断该链表是否为回文链表。如果是,返回true;否则,返回false。示例1:image.jpg输入:head=[1,2,2,1]输出:true示例2:imag......