Leetcode每日必刷题库第5题,如何实现最长回文子串?
生活随笔
收集整理的這篇文章主要介紹了
Leetcode每日必刷题库第5题,如何实现最长回文子串?
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
題目:
給定一個(gè)字符串 s,找到 s 中最長(zhǎng)的回文子串。你可以假設(shè)?s 的最大長(zhǎng)度為 1000。
示例:
示例 1:
輸入: "babad"
輸出: "bab"
注意: "aba" 也是一個(gè)有效答案。
示例 2:
輸入: "cbbd"
輸出: "bb"
答案:
class Solution(object):def longestPalindrome(self, s):""":type s: str:rtype: str"""left = right = 0n = len(s)for i in range(n - 1):if 2 * (n - i) + 1 < right - left + 1:breakl = r = iwhile l >= 0 and r < n and s[l] == s[r]:l -= 1r += 1if r - l - 2 > right - left:left = l + 1right = r - 1l = ir = i + 1while l >= 0 and r < n and s[l] == s[r]:l -= 1r += 1if r - l - 2 > right - left:left = l + 1right = r - 1return s[left:right + 1]?
總結(jié)
以上是生活随笔為你收集整理的Leetcode每日必刷题库第5题,如何实现最长回文子串?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 数据中台(二)数据质量分析及提升
- 下一篇: Tableau必知必会之如何快速制作 词