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

代码随想录day44:动态规划over,回文子串及字序列

文章目录

    • day44:动态规划over,回文子串
      • 647.回文子串
      • 516.最长回文子序列

day44:动态规划over,回文子串

647.回文子串

class Solution {public int countSubstrings(String s) {
// 布尔类型的dp[i][j]:表示区间范围[i,j] (注意是左闭右闭)的子串是否是回文子串,
// 如果是dp[i][j]为true,否则为falsechar[] chars = s.toCharArray();int n = s.length();boolean[][] dp = new boolean[n][n];int ans = 0;for (int i = n - 1; i >= 0; i--) {for (int j = i; j < n; j++) {if (chars[i] == chars[j]) {if (j - i <= 1 || dp[i + 1][j - 1]) {ans++;dp[i][j] = true;}}}}return ans;}
}

516.最长回文子序列

class Solution {public int longestPalindromeSubseq(String s) {
// dp[i][j]:字符串s在[i, j]范围内最长的回文子序列的长度为dp[i][j]int n = s.length();char[] chars = s.toCharArray();int[][] dp = new int[n][n];for (int i = 0; i < n; i++) dp[i][i] = 1;for (int i = n - 1; i >= 0; i--) {for (int j = i + 1; j < n; j++) {if (chars[i] == chars[j])dp[i][j] = dp[i + 1][j - 1] + 2;elsedp[i][j] = Math.max(dp[i + 1][j], dp[i][j - 1]);}}return dp[0][n - 1];}
}
http://www.lryc.cn/news/325949.html

相关文章:

  • ElasticSearch启动报错:Exception in thread “main“ SettingsException
  • git配置密钥
  • Pandas库常用方法、函数集合
  • Qt实现TFTP Server和 TFTP Client(一)
  • MySQL数据库的日志管理以及备份和恢复
  • Maven发布开源框架到远程仓库
  • Qt创建窗口选择的三个父类介绍 ----- QWidget、QMainWindow、QDialog
  • 论文翻译 - Defending Against Alignment-Breaking Attacks via Robustly Aligned LLM
  • Kafka总结问题
  • 【RPG Maker MV 仿新仙剑 战斗场景UI (八)】
  • 【PyQt】18 -菜单等顶层操作
  • 线性代数基础概念和在AI中的应用
  • elasticsearch _cat/indices docs.count is different than <index>/_count
  • 关系型数据库mysql(7)sql高级语句
  • 计算机网络——网络基础1
  • ERDUnet: An Efficient Residual Double-codingUnet for Medical Image Segmentation
  • vue响应式基础
  • 每天上万简历,录取不到1%!阿里腾讯的 offer 都给了哪些人?
  • 外包干了20天,技术退步明显.......
  • 4核8G云服务器,阿里云要多少钱?
  • 数学分析复习:振荡型级数的收敛判别
  • 阿里CICD流水线Docker部署,将阿里镜像私仓中的镜像部署到服务器中
  • 并发VS并行
  • C语言经典例题(8) --- 进制A+B、网购、及格分数、最高分数、计算一元二次方程
  • 两区域二次调频风火机组,麻雀启发式算法改进simulink与matlab联合
  • 自动驾驶国际标准ISO文件
  • 【数据结构】双向奔赴的爱恋 --- 双向链表
  • 【Redis】高频面试题
  • 数据分析基础
  • ffmpeg把一个平面视频,做成左右平面视频