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

LeetCode 分割回文串

131.分割回文串

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

示例 1:

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

示例 2:

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

提示:

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

解题思路

1、判断回文字符串:双指针+while循环

2、每一个字符后都设想有一个分割点,枚举每个分割点,满足条件就放入temp数组中,然后进行下一次分割

代码

class Solution {
public:vector<vector<string>> partition(string s) {vector<vector<string>> res;vector<string> temp;int index=0;dfs(s,index,res,temp);return res;      }void dfs(string s,int index,vector<vector<string>>& res,vector<string>& temp){if(index>=s.size()){res.push_back(temp);return;}for(int i=index;i<s.size();i++){if(isHW(s,index,i)){temp.push_back(s.substr(index,i-index+1));dfs(s,i+1,res,temp);temp.pop_back();}}}//利用双指针判断回文序列bool isHW(string s,int left,int right){while(left<right){if(s[left]==s[right]){left++;right--;}else{return false;}}return true;}};
http://www.dtcms.com/a/328005.html

相关文章:

  • 终端互动媒体业务VS终端小艺业务
  • 本地部署开源媒体中心软件 Kodi 并实现外部访问( Windows 版本)
  • Perl——文件操作
  • 工业相机终极指南:驱动现代智能制造的核心“慧眼”
  • 云原生作业(tomcat)
  • 优选算法 力扣 18. 四数之和 双指针算法的进化 优化时间复杂度 C++ 题解 每日一题
  • Perl——$_
  • Bevy渲染引擎核心技术深度解析:架构、体积雾与Meshlet渲染
  • UE5.3 C++ 动态多播实战总结
  • AtCoder Beginner Contest 418 C-E 题解
  • 数据分析小白训练营:基于python编程语言的Numpy库介绍(第三方库)(上篇)
  • python3 undefined symbol: _Py_LegacyLocaleDetected
  • C语言结构体与内存分配:构建复杂数据结构的基石
  • 【AI驱动的语义通信:突破比特传输的下一代通信范式】
  • Git 常用命令速查表
  • 最终章【1】Epson机器人篇
  • 微服务项目中的注册中心——Nacos配置
  • 【每日一题】Day 1
  • ETCD备份
  • Flask + Vue.js 物联网数字大屏实现方案
  • 学习:JS[9]作用域+函数进阶+深入对象+实例成员和静态成员
  • 为什么神经网络的权重矩阵具有低秩特性?如何理解和解释?
  • [Robotics_py] 机器人运动模型 | `update`函数 | 微积分矩阵
  • 线性代数 · 矩阵 | 最小多项式
  • 有限元方法中的数值技术:行列式、求逆、矩阵方程
  • 企业高性能web服务器(1)
  • 腾讯云服务器账户转移操作详解
  • ip归属地批量查询脚本
  • vue2+elementUI实现园型动态步骤条小组件,带缩放功能
  • ENCOPIM, S.L. 参展 AUTO TECH China 2025 广州国际汽车技术展览会