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

06分割回文串 回溯

131. 分割回文串

中等

相关标签

premium lock icon相关企业

给你一个字符串 s,请你将 s 分割成一些 子串,使每个子串都是 回文串 。返回 s 所有可能的分割方案。

示例 1:

输入:s = "aab"
输出:[["a","a","b"],["aa","b"]]

示例 2:

输入:s = "a"
输出:[["a"]]

提示:

  • 1 <= s.length <= 16
  • s 仅由小写英文字母组成

class Solution {vector<vector<string>> result;vector<string> path; // 放已经回文的子串void backtracking (const string& s, int startIndex) {// 如果起始位置已经等于s的大小,说明已经找到了一组分割方案了if (startIndex == s.size()) {result.push_back(path);return;}for (int i = startIndex; i < s.size(); i++) {if (isPalindrome(s, startIndex, i)) {   // 是回文子串// 获取[startIndex,i]在s中的子串string str = s.substr(startIndex, i - startIndex + 1);path.push_back(str);} else {                                // 不是回文,跳过continue;}backtracking(s, i + 1); // 寻找i+1为起始位置的子串path.pop_back(); // 回溯过程,弹出本次已经添加的子串}}bool isPalindrome(const string& s, int start, int end) {for (int i = start, j = end; i < j; i++, j--) {if (s[i] != s[j]) {return false;}}return true;}
public:vector<vector<string>> partition(string s) {// result.clear();// path.clear();backtracking(s, 0);return result;}
};
  • 可以抽象成和前面组合问题类似的问题,切割位置由startIdx控制,遇到回文就切(只有是回文才切,并且放入到path中),并且进入下一层递归,直到startIdx指向最后一个元素的下一个位置时,说明已经切完了,这是将path放入结果集里面
http://www.gsyq.cn/news/1357838.html

相关文章:

  • Caldroid扩展开发终极指南:如何编写自定义适配器和监听器
  • Multus 多网卡方案:IPVLAN 模式
  • PoeCharm:流放之路角色构建的完整中文解决方案
  • 2026年株洲黄金回收避坑全攻略,福昌夏等6家平台放心选 - 黄金上门回收
  • 【国家级边缘AI项目总架构师内部复盘】:为什么92%的AI Agent边缘化失败?4个被忽视的实时性阈值与硬件协同校准公式
  • C++中多重继承详解及其作用介绍
  • 2026年深圳日式搬家品牌推荐,这几家服务细节值得留意 - 兔兔不是荼荼
  • 【电路板】基于matlab模拟电路板激光加工中的热分布【含Matlab源码 15559期】
  • 二刷hot100-101.对称二叉树
  • 2026年惠州黄金回收门店推荐,品质之选尽在其中 - 黄金上门回收
  • 网易季报图解:营收306亿,净利108亿 游戏拉动增长,贡献84%收入
  • 系统架构师学校计划
  • 如何从零开始搭建ESP32智能语音助手:xiaozhi-esp32-server完整实战指南
  • 2026 苏州高评价上门回收黄金实测:哪家靠谱不踩坑? - 速递信息
  • taotoken的openai兼容协议让现有应用迁移成本降至最低
  • 2026年海口黄金回收平台深度盘点,标杆企业花落谁家? - 黄金上门回收
  • 基于深度学习+AI的玉米叶片病害目标检测与预警系统(Python源码+数据集+UI可视化界面+YOLOv11训练结果)
  • 洛雪音乐终极音源解决方案:如何构建多平台FLAC无损播放生态?
  • Windows Redis 7.0 终极安装与配置指南:从零开始掌握高性能内存数据库
  • TVBoxOSC:打造全能电视媒体中心的终极解决方案
  • 电机正反转深度解析
  • linux系统之进程管理详解
  • 家用扫地机器人技术发展路线浏览版-模块八:机械结构与工业设计
  • 豆包 一键导出Word文档,公式不乱码,用AI导出鸭,快到我以为手机开了挂
  • 协议分层传输、TCP报头与TCP三次握手介绍
  • 心理学论文降AI工具免费推荐:2026年心理学毕业论文知网维普降AI4.8元亲测完整方案
  • 如何用嘎嘎降AI处理哲学论文:哲学毕业论文降AI4.8元完整操作教程 - 还在做实验的师兄
  • QQ音乐加密音频快速解密指南:3分钟掌握qmcdump终极解决方案
  • 3D打印工作流革命:用Blender3mfFormat插件无缝衔接设计与制造
  • 2012–2024年 上市公司供应链透明度指数数据+代码