当前位置: 首页 > news >正文

域名租用平台在线网站seo优化

域名租用平台,在线网站seo优化,网站建设优化服务价位,医疗网站建设管理给你一个字符串 s ,请你统计并返回这个字符串中 回文子串 的数目。 回文字符串 是正着读和倒过来读一样的字符串。 子字符串 是字符串中的由连续字符组成的一个序列。 具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被视作不…

给你一个字符串 s ,请你统计并返回这个字符串中 回文子串 的数目。

回文字符串 是正着读和倒过来读一样的字符串。

子字符串 是字符串中的由连续字符组成的一个序列。

具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被视作不同的子串。

示例 1:

输入:s = “abc”
输出:3
解释:三个回文子串: “a”, “b”, “c”
示例 2:

输入:s = “aaa”
输出:6
解释:6个回文子串: “a”, “a”, “a”, “aa”, “aa”, “aaa”

提示:

1 <= s.length <= 1000
s 由小写英文字母组成

计算有多少个回文子串的最朴素方法就是枚举出所有的回文子串,而枚举出所有的回文字串又有两种思路,分别是:

  • 枚举出所有的子串,然后再判断这些子串是否是回文;

  • 枚举每一个可能的回文中心,然后用两个指针分别向左右两边拓展,当两个指针指向的元素相同的时候就拓展,否则停止拓展。

假设字符串的长度为 n。我们可以看出前者会用 O ( n 2 ) O(n^2) O(n2) 的时间枚举出所有的子串 s [ l i . . . r i ] s[l_i...r_i] s[li...ri], 然后再用 O ( r i − l i + 1 ) O(r_i - l_i + 1) O(rili+1) 的时间检测当前的子串是否是回文,整个算法的时间复杂度是 O ( n 3 ) O(n^3) O(n3)。而后者枚举回文中心的是 O ( n ) O(n) O(n) 的,对于每个回文中心拓展的次数也是 O ( n ) O(n) O(n)的,所以时间复杂度是 O ( n 2 ) O(n^2) O(n2)。所以我们选择第二种方法来枚举所有的回文子串。

在实现的时候,我们需要处理一个问题,即如何有序地枚举所有可能的回文中心,我们需要考虑回文长度是奇数和回文长度是偶数的两种情况。如果回文长度是奇数,那么回文中心是一个字符;如果回文长度是偶数,那么中心是两个字符。

class Solution:def countSubstrings(self, s: str) -> int:n = len(s)ans = 0for i in range(n):#奇数长度ans += 1l, r = i - 1, i + 1while l > -1 and r < n:if s[l] == s[r]:ans += 1else:breakl -= 1r += 1#偶数长度if (i + 1) < n and s[i] == s[i+1]:ans += 1l, r = i - 1, i + 2while l > -1 and r < n:if s[l] == s[r]:ans += 1else:breakl -= 1r += 1return ansif __name__ == '__main__':s = Solution()print(s.countSubstrings("abc"))print(s.countSubstrings("aaa"))

复杂度分析

  • 时间复杂度: O ( n 2 ) O(n^2) O(n2)
  • 空间复杂度: O ( 1 ) O(1) O(1)

复杂度更低的方法参考:https://leetcode.cn/problems/palindromic-substrings/solution/hui-wen-zi-chuan-by-leetcode-solution/

http://www.fp688.cn/news/160161.html

相关文章:

  • 兴义市住房和城乡建设局网站班级优化大师手机版下载(免费)
  • 顺德 网站开发 招聘项目营销策划方案
  • h5网站开发软件下载seo描述是什么意思
  • 腐女喜欢做的网站网络营销推广方案案例
  • 深圳网站建设资讯seo综合查询怎么用的
  • 黔西南网站建设灰色词seo推广
  • 怎样找回网站域名密码缅甸今日新闻
  • 珠海网站设计公司网络服务商在哪咨询
  • 聚通达网站建设seo怎么做排名
  • 做网站 做推广需要知道什么市场营销案例
  • 专题网站开发工具有哪些广州新闻播报
  • 空投注册送币网站怎么做网站收录查询代码
  • 房价成交数据官网查询福州seo快速排名软件
  • 设计的种类seog
  • 已有网站备案seo型网站
  • 丝绸之路网站建设报告金戈枸橼酸西地那非片
  • 有什么设计网站推荐湖南广告优化
  • 山西自助建站系统平台网站设计培训
  • wordpress qq邮箱留言seo黑帽教程视频
  • 做项目挣钱的网站哪个网站做推广效果好
  • 专业的seo网站优化公司seo从0到1怎么做
  • 做网站哪家便宜软件定制开发平台
  • 公众号的微网站怎么做网络推广网址
  • 网页制作 软件深圳百度seo公司
  • 自己做的网站给人攻击了怎么办百度搜索一下
  • 做诱导网站网站收录免费咨询
  • 谷哇网站建设怎样创建一个网站
  • 广州网站百度排名推广合肥网站seo整站优化
  • 做网站需要提供哪些信息网络推广销售是做什么的
  • 微信在线客服系统网页seo实战培训视频