题目 :给定一个字符串,要求打印字符串所有的子序列,包括空串
比如 abc 有字串 "" ,"a","ab","ac","abc","b","bc","abc"
思想 :
递归遍历字符串,每次可能把当前位置的字符传给下一个字符串,也可能不
代码
package com.algorithm.practice.string;
public class GetChildString {
//打印当前字符串的字串 比如 abc 有字串 "" ,"a","ab","ac","abc","b","bc","abc"
public static void pringChildString(char[] chars,int index,String lastR){
if (index==chars.length){//index代表当前遍历的字符在字符串的位置
System.out.println(lastR);
return;
}
pringChildString(chars,index+1,lastR+String.valueOf(chars[index]));//传当前元素
pringChildString(chars,index+1,lastR);//不传当前元素
}
public static void main(String[] args){
String str="abc";
pringChildString(str.toCharArray(),0,"");
}
}