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

6做网站东莞建筑公司排行榜

6做网站,东莞建筑公司排行榜,c mvc制作网站开发,网站开发流程有哪几个阶段LeetCode-131 分割回文串 题目描述解题思路C 代码 题目描述 给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串。返回 s 所有可能的分割方案。 示例 1: 输入:s “aab” 输出:[[“a”,“a”,“b”],…

LeetCode-131 分割回文串

  • 题目描述
  • 解题思路
  • C++ 代码

题目描述

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

示例 1:

输入:s = “aab”
输出:[[“a”,“a”,“b”],[“aa”,“b”]]
示例 2:

输入:s = “a”
输出:[[“a”]]

解题思路

B站题目讲解
在解决组合、排列、子集、切割问题时,我们选择使用回溯算法。

用指针 start 试着去切,切出一个回文串,基于新的 start,继续往下切,直到 start 越界
每次基于当前的 start,可以选择不同的 i,切出 start 到 i 的子串,我们枚举出这些选项 i:

  • 切出的子串满足回文,将它加入部分解 path 数组,并继续往下切(递归)
  • 切出的子串不是回文,跳过该选择,不落入递归,继续下一轮迭代
    Alt

C++ 代码

class Solution {
public:vector<vector<string>> partition(string s) {back_tracking(s, 0);return res;}
private:vector<vector<string>> res;vector<string> path;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;}void back_tracking(string& s, int index) {if (index >= s.size()) {res.push_back(path);return;} else {for (int i = index; i < s.size(); i++) {if (isPalindrome(s, index, i)) {path.push_back(s.substr(index, i - index + 1));} else {continue;}back_tracking(s, i + 1);path.pop_back();}}}
};
http://www.yayakq.cn/news/942473/

相关文章:

  • jsp网站开发 开题依据6网站建设做网站
  • 芜湖网站开发公司电话泰安约吧
  • 无锡网站排名优化wordpress 滑动主题
  • 网站的结构类型免费个人网站建设报价
  • 东莞自己建网站哪家强wordpress 占内存
  • 建设一个营销网站有哪些步骤滕州做网站的
  • 建设网站的申请报告怎么在各个网站免费推广信息
  • 做二手车网站需要什么自己做的视频发什么网站
  • 旅游网站建设的背景意义深圳网络营销推广方案
  • WordPress适合做多大级别的网站门户网站建设 报告
  • 旅游网站开发说明响应式购物网站设计
  • 免费学编程的网站有哪些中国住房和城乡建设厅网站首页
  • 网站的建设费用分为刚接触网站建设有哪些问题
  • 网站不收录排名会降吗两个网站用一个空间
  • 网站开发实训周报网页与网站的区别和关系
  • 携程网站建设项目做网站赚外快
  • 网站服务器建设教程什么网站做视频给钱
  • 网站开发做什么费用网站安装步骤页面
  • 沈阳专业做网站方案苍南公司网站建设
  • 无线网络搜索引擎优化核心
  • 广州学网站建设新野做网站
  • 企业网站建设要求温州营销网站制作联系电话
  • ae模板免费网站企业建站模版
  • 网站服务器设置电商网站前台模块
  • wordpress建站创业分析企业营销型网站建设的可能性
  • 漳州网站建设求职简历网站的产品上传图片
  • 玉溪建设局门户网站wordpress的站点是什么
  • 装修网页设计网站管理会计
  • 网站被黑客攻击怎么办秦皇岛建设工程
  • 卖猕猴桃网站建设宣传策划书wordpress问答类主题