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

做PS的赚钱的网站外贸网站建设 google

做PS的赚钱的网站,外贸网站建设 google,乐清视频制作公司,界面做的比较好的网站最长回文子串 给你一个字符串 s,找到 s 中最长的 回文 子串。 https://leetcode.cn/problems/longest-palindromic-substring/submissions/607962358/ 动态规划: 回文串即是从前面开始读和从后面开始读,读出来的字符串均相同的字符串&#…

最长回文子串

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

https://leetcode.cn/problems/longest-palindromic-substring/submissions/607962358/

在这里插入图片描述

动态规划:

  1. 回文串即是从前面开始读和从后面开始读,读出来的字符串均相同的字符串,可以理解字符串正中间是一面镜子,镜子的两侧字符串必然对称。
    在这里插入图片描述

  2. 实际上回文串如果只含一个字符,必然是回文串;如果含2个字符,若两个字符相等,则必然是回文串,否则不是回文串,例如ab,这就不是回文串,‘bb’就是;

  3. 如果含多个字符,那么如果第一位和最后一位字符不相同,那肯定不是回文串(按照上图所示,回文串必然是对称的,如果第一位和最后一位字符不同,那么就必然存在不对称的情况了

  4. 如果含多个字符且第一位和最后一位字符相同,那么,如果它去除掉第一位和最后一位字符后,依然是回文串,那它肯定是回文串;否则,如果它去除掉第一位和最后一位字符后,不是回文串,那说明这个子串肯定不对称,不对称的话肯定就不是回文串了。所以问S[i,j]是不是字串,就要看它的子串S[i+1,j-1]是不是回文串。显然应该用动态规划

  5. 动态规划访问数组的时候一定要按照图里面的。1斜线,2斜线,3斜线……5斜线这个顺序去访问,
    在这里插入图片描述
    否则例如下面图示的这个访问顺序,会出现访问dp[0,3]时,dp[1,2] 没赋值就访问的问题

  6. vector最好用int,vector<vector<int>>,别用布尔bool,否则难以察觉到自己的算法是否有数组越界的问题。

class Solution {
public:string longestPalindrome(string s) {int s_len = s.size();if (s_len <= 1) {return s;}int max_len = 1, begin = 0; // 最大回文长度和起始位置vector<vector<int>> dp(s_len, vector<int>(s_len));// S[i][i]也就是串的i号位字符,由于所有长度为1的串都是回文,所以是truefor (int i = 0; i < s_len; i++) {dp[i][i] = true;}// 由于s[i][j]回文取决于S[i+1][j-1]是否是回文,所以优先填充斜线// 当前检测的子串长度为Lfor (int L = 2; L <= s_len; L++) {for (int i = 0; i < s_len; i++) {int j = L + i - 1;if (j >= s_len)//子串终点标记j不能大于父串break;if (s[i] == s[j]) {//看看字串是否是回文串if (j - i + 1 <= 2) {//长度2,又有s[i] == s[j],必然是回文串dp[i][j] = true;} else {dp[i][j] = dp[i + 1][j - 1];}} else {// s[i] != s[j],出现了不对称的情况,不可能是回文串了dp[i][j] = false;}if (dp[i][j] && max_len < j - i + 1) {// 此次迭代检测到回文串,更新最大值begin = i;max_len = j - i + 1;}}}return s.substr(begin, max_len);}
};
http://www.dtcms.com/wzjs/402892.html

相关文章:

  • 建设银行总行网站国内最近的新闻大事
  • wordpress 背景图片昆明seo工资
  • 网站推广运营公司黄冈网站推广软件视频下载
  • 做理财的网站有哪些问题百度互联网营销是什么
  • 广西建设网查询什么是seo如何进行seo
  • 请详细说明网站开发流程及原则淘宝大数据查询平台
  • 网站色彩搭配表程序员培训机构排名
  • 广州建站公司有哪些北京seo优化公司
  • 多梦主题建设的网站新公司做网站多少钱
  • 建网站需要哪些知识推广赚钱的项目
  • 网络公司网站建设服务俄罗斯搜索引擎yandex
  • 政府机构做门户网站的好处自建网站平台有哪些
  • 在线教学的网站开发方案全网整合营销推广
  • 做公司网站怎么做手机版网络营销推广系统
  • 中国著名的网站建设公司cba排名
  • 做网站用什么开发工具免费自建网站有哪些
  • 门户网站建设 总结域名查询
  • 广州专业建设网站关键词有哪些?
  • 网站建设用户调查微商怎么找客源人脉
  • wordpress 模板 管理志鸿优化网
  • 优化网站有哪些方法网站排名顾问
  • visio画网站开发类图电脑系统优化软件排行榜
  • 修改wordpress的语言设置株洲seo优化报价
  • 小说网站建设方案书it培训机构排名及学费
  • 大连市开发区网站建设公司如何在百度推广自己
  • 网页制作教程哔哩哔哩深圳优化网站方法
  • 网站通信管理部门备案河南做网站的公司
  • 公司网站后台登陆什么是网络营销战略
  • asp.net 做网站做关键词推广
  • 网站备案账号是什么情况站长之家最新网站