功能描述:查找一个字符串的子字符集
输入:abab 输出: a b ab ba aba bab
要求实现方法:
public List<String> getChildren(){
List<String> list = new ArrayList<String>();
}
输入:abab 输出: a b ab ba aba bab
要求实现方法:
public List<String> getChildren(){
List<String> list = new ArrayList<String>();
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.util.Set;
import java.util.TreeSet;
/**
* @author yanwu
*
*/
public class Test20
{
public static void main(String[] args)
{
new Test20().getChildren();
}
public List<String> getChildren()
{
System.out.println("Input the string:");
Scanner scan = new Scanner(System.in);
String str = scan.nextLine();
List<String> list = new ArrayList<String>();
list.addAll(children(str));
for (String str1 : list)
{
System.out.print(str1 + " ");
}
return list;
}
public Set<String> children(String str)
{
Set<String> set = new TreeSet<String>();
int len = str.length();
for (int i = 1; i < len; i++)
{
for (int j = 0; j < len; j++)
{
String temp = str.substring(j);
if (temp.length() >= i)
{
set.add(temp.substring(0,i));
temp = temp.substring(i);
}
}
}
return set;
}
}
}