Given a string s, partition s such that every substring of the partition is a palindrome.
Return all possible palindrome partitioning of s.
For example, given s = "aab"
,
[ ["aa","b"], ["a","a","b"]]
给定一个指针从字符串从前往后移动,从开头到该指针的字符串是回文,则递归剩下后面部分字符串。
代码如下:
class Solution { public List
> partition(String s) { List
> res=new ArrayList
>(); if(s==null||s.length()==0) return res; helper(res,new ArrayList (),s,0); return res; } public void helper(List
> res,List list,String s,int index){ if(index==s.length()){ res.add(new ArrayList (list)); return ; } for(int i=index;i