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

广州网站优化服务武汉网站设计

广州网站优化服务,武汉网站设计,南城县建设局网站,武汉网站设计公司哪家好链接:131. 分割回文串 - 力扣(LeetCode) 给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串 。返回 s 所有可能的分割方案。 示例 1: 输入:s "aab" 输出&#xff…

链接:131. 分割回文串 - 力扣(LeetCode)

给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 

回文串

 。返回 s 所有可能的分割方案。

示例 1:

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

示例 2:

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

提示:

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

思路

        首先一看到数据范围这么小,很明显就是要我们dfs搜索的,然后这题还是求最大回文串的,那么我们知道肯定得先判断一下当前数组是否是回文串,不是的话就不添加,否则就添加进去。

判断回文串我们知道可以用记忆化搜索,如果我们之前搜过了当前子串,我们可以给他赋值1和-1,

1表示当前子串是回文串,-1表示不是,这样子我们就可以很快的判断是否是回文串了,就直接套回溯dfs模板直接写即可

代码

class Solution {
public:vector<vector<string>> res;vector<string> ans;int n;int f[18][18];void dfs(int p,string s){cout<<p<<endl;if(p>=s.size()){    //已经到达右端点无需遍历了,直接添加res.push_back(ans);return;}for(int i=1;i<=n;i++){//表示枚举的长度if(p+i<=n && isflag(p,p+i-1,s)==1){ //当前子串是回文串, ans.push_back(s.substr(p,i));dfs(p+i,s);ans.pop_back();}}}int isflag(int i,int j,string s){if(f[i][j]) return f[i][j];if(i>=j) return f[i][j]=1;return f[i][j]=(s[i]==s[j])?isflag(i+1,j-1,s):-1;}vector<vector<string>> partition(string s) {n = s.size();dfs(0,s);return res;}};

http://www.ritt.cn/news/7438.html

相关文章:

  • wordpress 制作侧边栏seo软文是什么意思
  • 建立个公司网站网络宣传平台有哪些
  • 全响应网站制作推广app软件
  • 怎样建设网站卖农产品流感用什么药最好
  • 重庆建设空调网站100%能上热门的文案
  • 网站做HTTPS的重要友情链接导航
  • 网站制作现状解决方案专业做网站
  • 模板网站新增备案两次都未通过网站也打不开网络推广属于什么行业
  • 商业型网站企业管理咨询培训
  • 武汉官方网站建设电商运营怎么自学
  • asp做网站搜索怎么在网上做推广
  • 东莞乐从网站建设网站建设免费
  • 网站建设 物流湖南seo服务
  • 优化疫情防控措施要点网站排名优化公司
  • 谷歌云可以做网站吗360提交网站收录入口
  • app地图下载安装seo排名优化的网站
  • 网站建设有模板吗网站免费网站免费
  • 自贸区注册公司有什么优势sem seo
  • 为什么要做官方网站濮阳市网站建设
  • 唐山做网站优化公司个人网站设计图片
  • 做淘宝类网站写文案接单平台
  • 网站 政府cms自助友链平台
  • 可以做空股票的网站刚刚发生 北京严重发生
  • 大丰做网站指数搜索
  • 做一回最好的网站杭州网站制作排名
  • 山东高阳建设公司网站网站结构优化
  • php综合网站建设论文北京官方seo搜索引擎优化推荐
  • 广州做网站做得比较好怎么开发网站
  • 常见的网站开发语言即刻搜索引擎入口
  • 企业站seo报价软件外包企业排名