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

淘宝入驻网站建设账户竞价托管哪里好

淘宝入驻网站建设,账户竞价托管哪里好,加强网站网络安全建设,qq个人中心网页版寻找回文子串的完整思路过程前言一、回文串的数量二、动态规划1、完整思考过程2、go总结参考文献前言 回文字符串,就是从左遍历和从右遍历的字符是相同顺序的,转换一下,就是该字符串是对称的。寻找回文子串面临两个直接的问题,1-…

寻找回文子串的完整思路过程

  • 前言
  • 一、回文串的数量
  • 二、动态规划
    • 1、完整思考过程
    • 2、go
  • 总结
  • 参考文献

前言

回文字符串,就是从左遍历和从右遍历的字符是相同顺序的,转换一下,就是该字符串是对称的。寻找回文子串面临两个直接的问题,1-如何确定一个子串?2-如何判断该子串是否为回文串?

一、回文串的数量

在这里插入图片描述

二、动态规划

1、完整思考过程

两个直观的问题,
1)如何确定子串?两层for循环O(n2)定位左右边界。
2)如何判定子串是回文子串?for循环O(n)判定是否对称。
复杂度:O(n3)

子串/子数组问题,联想前缀/滑动窗口/单调栈/动态规划,
回文内在特点)一个回文串本身有什么特点?去头去尾也是回文,利用这个规律,记录内串是否为回文,从内到外递进判断,可以减少for循环的对称判断,则可将时间复杂度降为O(n2)

方案)由内到外,从少到多,先判断s[:0]子串,再判断s[:1]子串,依次类推。

2、go

func countSubstrings(s string) int {f := make([]bool,len(s))cnt := 0for i := 0;i < len(s);i++ {f[i] = truecnt++ // 每个字符串都是一个回文,这里cnt++配合f[i] = ture,相互理解,而不是cnt := len(s)// 需要用到f[j+1],所以正序遍历,防止覆盖。for j := 0;j < i;j++ {f[j] = false // 复用一层数组,需要覆盖前面的值,保持严格递推。if s[i] == s[j] && (j + 1 == i || f[j + 1]) {f[j] = truecnt++}}}return cnt
}

总结

1)写下完整的思路过程,有助于清晰的理解问题,记忆问题的解答思路。
2)动态规划本质,将问题分解成规模不同性质相同的子问题,找到子问题之间的内在联系,此时便可记录这种联系点,以空间换时间。
3)动态规划常常涉及空间压缩,而压缩面临直观的两个问题,1-这个记录的状态是否过时?2-这个记录的状态是否太新?(才覆盖了)

参考文献

[1] LeetCode 回文串的数量

http://www.yayakq.cn/news/906291/

相关文章:

  • dede网站地图地睛修改目录wordpress
  • 武威市市建设局网站建筑业管理驻马店北京网站建设
  • 做棋牌网站违法吗wordpress 企业模板
  • 个人可以做网站维护吗wordpress文章编辑器连接七牛云
  • 刷链接浏览量网站从零开始学wordpress
  • 莱州网站制作网站上截小屏幕 怎么做
  • 个人网站制作流程phpcms适合做什么网站
  • 网站背景色河南瑞达建设工程有限公司网站
  • 伊利网站建设山东seo网站推广
  • 做电商网站一般多少钱微信营销的案例
  • 重庆职业能力建设投稿网站从事建站业务还有前景吗
  • 中国建设银行公积金网站首页公司的网 网站打不开怎么办
  • 上海信息公司做网站wordpress手动搬家问题
  • 西安 网站托管网站海外推广哪家好
  • 湛江网站建设方案报价百度会员登录入口
  • 网站空间 ASP大型门户网站建设是什么
  • 浦东新区手机网站建设单位网站建设费算无形资产吗
  • 臭臭猫网站建设昆明软件开发公司推荐
  • 广州注册公司网站外贸网络推广经验
  • php网站服务器架设做网站怎么引流
  • 织梦做网站利于优化大名网站建设公司
  • 网站版式分类怎么来钱快
  • 做网站的时候宽度都怎么弄wordpress 4.9.6 zh
  • 网站做微信支付宝支付宝思茅北京网站建设
  • 网站推广需要几个人做cms网站建设技术
  • 秒收的网站网页设计项目描述怎么写
  • 域名申请到网站建设教程网站建设宣传图ps
  • 泰州专业网站建设公司360搜索关键词优化软件
  • 怎么建设收费网站设计制作散发寄递
  • 站长 网站对比泰州网站制作价格