分割回文串

给定一个字符串 s,将 s 分割成一些子串,使每个子串都是回文串。

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

示例:

输入: "aab"

输出:

[

["aa","b"],

["a","a","b"]

]

 public class Solution{
List<List<String>> res=new ArrayList<>();
public List<List<String>> partition(String s){
DFS(s,new ArrayList<String>());
return res;
} private boolean isPalindrom(String s){
int p1=0;
int p2=s.length()-1;
int len=(s.length()+1)/2;
for(int i=0;i<len;i++){
if(s.charAt(p1++)!=s.charAt(p2--))
return false;
}
return true;
} private void DFS(String s,List<String> list){
if(s.length()<1){
res.add(new ArrayList<>(list));
return;
}
for(int i=1;i<=s.length();i++){
String str=s.substring(0,i);
if(isPalindrom(str)){
list.add(str);
DFS(s.substring(i),list);
list.remove(list.size()-1);
}else{
continue;
}
}
}
}

最新文章

  1. 教程三:Wechat库的使用
  2. Attribute
  3. java之String
  4. 【leetcode】3Sum
  5. MVC基础(很基础很基础~~~)
  6. Ubuntu14.04下安装ns2.35
  7. [连载]JavaScript讲义(02)--- JavaScript核心编程
  8. [jstips]undefined和null的区别
  9. putty 直接连 快捷键方式
  10. CJOJ 2484 函数最小值 / Luogu 2085 函数最小值(STL优先队列,堆)
  11. python+selenium自动化软件测试(第6章):selenium phantomjs页面解析使用
  12. maven的安装及配置
  13. EF架构~mysql数据库无法创建数据模型
  14. 【转载】Windows Server 2012服务器删除IIS方法
  15. fragment滑动界面
  16. python基础一 ------利用生成器生成一个可迭代对象
  17. 使用Html Agility Pack快速解析Html内容
  18. 191. Number of 1 Bits (Int; Bit)
  19. day 24 socket 黏包
  20. Linux cp 强制覆盖

热门文章

  1. 国外知名IT网站(转载)
  2. Ubuntu搭建Eclipse+JDK+SDK的Android (转载)
  3. 【WIP】数据结构与算法入门
  4. Rails5&#160;View&#160;Document
  5. 10.27night清北刷题班
  6. BEM --Yandex的CSS 命名方法论
  7. OpenGL 2D模式
  8. mui 文件上传注意问题
  9. 专题九:实现类似QQ的即时通信程序
  10. IE 浏览器在地址栏输入中文字符,发送get请求报400错误的问题