LeetCode题解(0647):字符串的回文子串数量(Python)
发布日期:2021-06-29 19:58:04 浏览次数:2 分类:技术文章

本文共 780 字,大约阅读时间需要 2 分钟。

题目:(中等)

标签:字符串

解法 时间复杂度 空间复杂度 执行用时
Ans 1 (Python) O ( N 2 ) O(N^2) O(N2) O ( 1 ) O(1) O(1) 120ms (94.10%)
Ans 2 (Python)
Ans 3 (Python)

LeetCode的Python执行用时随缘,只要时间复杂度没有明显差异,执行用时一般都在同一个量级,仅作参考意义。

解法一:

class Solution:    def countSubstrings(self, s: str) -> int:        N = len(s)        ans = 0        # 处理奇数长度的回文串        for i in range(N):            ans += 1            left, right = i - 1, i + 1            while 0 <= left and right < N and s[left] == s[right]:                ans += 1                left -= 1                right += 1        # 处理偶数长度的回文串        for i in range(N - 1):            left, right = i, i + 1            while 0 <= left and right < N and s[left] == s[right]:                ans += 1                left -= 1                right += 1        return ans

转载地址:https://dataartist.blog.csdn.net/article/details/108055397 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:LeetCode题解(0678):判断包含通配符*的字符串中的括号是否有效(Python)
下一篇:LeetCode题解(0632):包含每个列表中至少一个整数的最小区间(Python)

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2024年04月11日 12时20分38秒