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

力扣第47天--- 第647题、第516题

# 力扣第47天— 第647题、第516题

文章目录

  • 一、第647题--回文子串
  • 二、第516题--最长回文子序列

一、第647题–回文子串

​ 逻辑梳理清楚了,就还行。没有想象中那么难。注意遍历顺序,i从大到小。

class Solution {
public:int countSubstrings(string s) {vector<vector<bool>> dp(s.size(), vector<bool>(s.size(), false));int result = 0;for (int i = s.size()-1; i>=0; i--){for (int j = i; j<= s.size()-1; j++){if(s[i] == s[j]) {if (j-i <=1) {dp[i][j] = true;result++;}else {dp[i][j] = dp[i+1][j-1];if (dp[i][j]) result++;}}}}return result;}
};

二、第516题–最长回文子序列

​ 还可以吧,跟上一题差不多。遍历顺序一样,但是要注意,j的遍历起点为i+1,因为递归的时候涉及到i+1,会导致越界。递推公式,要想一想,但是难度不大。

class Solution {
public:int longestPalindromeSubseq(string s) {vector<vector<int>> dp(s.size(), vector<int>(s.size(), 0));for(int i =0; i<s.size(); i++) dp[i][i] = 1;for(int i = s.size()-1; i>=0; i--){for (int j = i+1; j< s.size(); j++){// cout << dp[i][j] << '-';if(s[i] == s[j]) dp[i][j] = dp[i+1][j-1] + 2;else dp[i][j] = max(dp[i+1][j], dp[i][j-1]);}}return dp[0][s.size()-1];}
};
http://www.lryc.cn/news/170810.html

相关文章:

  • dll文件找不到,微软官方地址
  • 【音视频】FLV封装格式
  • 别再纠结线程池池大小、线程数量了,哪有什么固定公式 | 京东云技术团队
  • Redis 数据一致性方案的分析与研究
  • 【网络安全】黑客自学笔记
  • 深入解析Perlin Simplex噪声函数:在C++中构建现代、高效、免费的3D图形背景
  • 【计算机辅助蛋白质结构分析、分子对接、片段药物设计技术与应用】
  • 免费开箱即用微鳄售后工单管理系统
  • vant 组件库的基本使用
  • HTML常用基本元素总结
  • msvcp140.dll重新安装的解决方法是什么?(最新方法)
  • USI-0002 SDI-1624 HONEYWELL ,用于工业和物流4.0的人工智能
  • 计算机竞赛 深度学习 python opencv 火焰检测识别
  • Intellij idea 2023 年下载、安装教程、亲测可用
  • AI文本创作在百度App发文的实践
  • Kafka 集群与可靠性
  • 【刷题】蓝桥杯
  • C++入门及简单例子_4
  • 成集云 | 用友U8集成聚水潭ERP(用友U8主管库存)| 解决方案
  • 提升网站效率与SEO优化:ZBlog插件集成解决方案
  • C语言的编译过程详解
  • 无人机航测没信号?北斗卫星来解决
  • Vue 03 数据绑定
  • #循循渐进学51单片机#步进电机与蜂鸣器#not.8
  • 计算存储是不是智算时代的杀手锏?
  • 西门子S7-1200F或1500F系列安全PLC的组态步骤和基础编程(二)
  • 【Spring Boot】Spring Boot中的简单查询
  • Transformer 01(自注意机制Self-attention)
  • 交流共享,共筑智算底座丨九州未来受邀出席英特尔线下沙龙
  • 【EI会议信息】第五届土木建筑与城市工程国际学术会议(ICCAUE 2023)