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

【动态规划】647. 回文子串

力扣链接:. - 力扣(LeetCode)

动规大法开始吟唱:

dp[i][j]含义:从i到j的子串是否为回文子串

递推公式:当s[i] == s[j]时

1. j-i<=1时, dp[i][j]为true

2. 否则,若dp[i+1][j-1]为true,则dp[i][j]为true

遍历顺序:dp[i][j]的状态依赖dp[i+1][j-1],所以i从大到小,j从小到大遍历

ac代码如下:

class Solution {public int countSubstrings(String s) {int len = s.length();boolean[][] dp = new boolean[len][len];int ans = 0;for(int i=len-1;i>=0;i--){for(int j=i;j<len;j++) {if(s.charAt(i)==s.charAt(j)) {if(j-i<=1){dp[i][j]=true;ans++;} else if(dp[i+1][j-1]){dp[i][j]=true;ans++;}}}} return ans;}
}

http://www.lryc.cn/news/419223.html

相关文章:

  • python-约瑟夫环(赛氪OJ)
  • Less 教程:从入门到精通
  • 【VScode】如何在anaconda虚拟环境中打开vscode项目
  • Flink任务提交流程和运行模式
  • 【机器学习】 Sigmoid函数:机器学习中的关键激活函数
  • Vue+Element Plus后台管理主界面搭建实现
  • JAVA—异常
  • 常见八股面试题:Dubbo 和 Spring Cloud Gateway 有什么区别?
  • k8s分布式存储-ceph
  • Redis cluster集群部署
  • Java泛型的理解
  • Linux 照片图像编辑器
  • 【51单片机仿真】基于51单片机设计的智能六位密码锁(匿*输入/密码修改/警示/保存/恢复/初始密码)源码仿真设计文档演示视频——文末资料下载
  • 【Vue3】组件通信之mitt
  • 状态压缩动态规划——状压dp
  • 【算法】最短路径算法思路小结
  • zabbix7.0TLS-05-快速入门-触发器
  • vue关于双向数据绑定的骚操作
  • 基于Jeecgboot3.6.3的vue3版本的流程中仿钉钉流程的鼠标拖动功能支持
  • Docker Compse单机编排
  • “AI+Security”系列第2期(一):对抗!大模型自身安全的攻防博弈
  • Python Static Typing: 提升代码可靠性与可读性的使用技巧
  • Datawhale多模态赛事(1)
  • 云手机在海外社交媒体运营中的作用
  • Ubuntu怎么进入救援模式或单用户模式
  • 学习鸿蒙-构建私有仓储
  • 经验是负债,学习是资产
  • 电脑屏幕录制工具分享5款,附上详细电脑录屏教程(2024全新)
  • Docker资源隔离的实现策略以及适用场景
  • PLL基本原理、设计及应用