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

力扣第5题:最长回文子串(动态规划)

小学生一枚,自学信奥中,没参加培训机构,所以命名不规范、代码不优美是在所难免的,欢迎指正。

标签:
字符串、动态规划、中心扩散法

语言:
C++

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

截图:

代码:

class Solution {
public:string longestPalindrome(string s) {string maxs;if (s.size() == 1)return s; // 回文子串是它本身if (s.size() == 2) {if (s[0] == s[1])return s; // aaelse {string s1 = "";s1 = s1 + s[0];return s1; // ab}}// x是任意字符,不是字母xif (s[0] == s[1]) {            // aaxmaxs = maxs + s[0] + s[1]; // maxs=aaif (s[1] == s[2]) {        // aaamaxs = maxs + s[2];    // maxs=aaa}} else {if (s[0] == s[2]) {                   // axamaxs = maxs + s[0] + s[1] + s[2]; // maxs=axa}}for (int i = 2; i < s.size(); i++) {//以字符i为中心,向两边扩散,获取最长回文串int left = 0, right = 0;int j = i - 1;while (j >= 0 and s[j] == s[i]) {j--;left--;}j = i + 1;while (j < s.size() and s[j] == s[i]) {j++;right++;}//左右指针移动,先判断是否越界再偏移j = 1;while (i + right + j <= s.size() and i + left - j >= 0 and s[i + left - j] == s[i + right + j]) {j++;}j--;//判断回文if ((i + right + j) - i - left + j + 1 > maxs.size()) {maxs = "";for (int k = i + left - j; k <= i + right + j; k++) {maxs = maxs + s[k];}}//存储回文}return maxs;}
};

http://www.xdnf.cn/news/7536.html

相关文章:

  • 【全解析】EN18031标准下的NMM网络监控机制
  • css使用clip-path属性切割显示可见内容
  • 【MySQL】第七弹——复习总结 视图
  • SSRF(服务器端请求伪造)基本原理靶场实现
  • CVE-2017-4971源码分析与漏洞复现
  • 谈谈对《加密算法》的理解
  • 零售智能执行大模型架构设计:从空间建模到上下文推理,再到智能Agent
  • DB31/T 1552-2025《居民电子健康档案应用系统等级评估指南》:上海地方标准全面解析
  • 什么是VR展示?VR展示的用途
  • 数据库4——存储过程及游标
  • leetcode 合并区间 java
  • ajax post请求 解决自动再get请求一次
  • 黑马Java基础笔记-13常用查找算法
  • 山东大学软件学院项目实训-基于大模型的模拟面试系统-Vditor编辑器上传图片
  • Prompt Tuning:轻量级大模型微调全攻略
  • KC 喝咖啡/书的复制/奶牛晒衣服/ 切绳子
  • 打破建筑与制造数据壁垒:Revit 到 STP 格式转换全攻略(含插件应用 + 迪威模型实战)
  • 闲时处理技术---CAD C#二次开发
  • C++23 容器从其他兼容范围的可构造性与可赋值性 (P1206R7)
  • CoreBluetooth 入门:扫描并连接 BLE 手环实战
  • 安卓settings单双屏显示
  • Qt调用librdkafka
  • 基于ROS2/Gazebo的室内送餐机器人系统开发实战教程
  • 山东大学计算机图形学期末复习完结篇上——24历年题
  • 动力电池点焊机厂家:驱动新能源制造的精密力量|比斯特自动化
  • 5:OpenCV—直方图均衡化
  • MySQL 8.0 OCP 1Z0-908 161-170题
  • Go语言使用通义灵码辅助开发 - AI编程助手提升效率
  • PowerBI 矩阵实现动态行内容(如前后销售数据)统计数据,以及过滤同时为0的数据
  • 【jmeter】base64加密