本文算法对于:大数据aaaaaaaaaaaaaaaaaaaaaaa;无法通过
时间越界Last executed input:"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab", ["a","aa","aaa","aaaa","aaaaa","aaaaaa","aaaaaaa","aaaaaaaa","aaaaaaaaa","aaaaaaaaaa"]
public ArrayList<String> list = new ArrayList<String>();
public void wordBreak(String s, Set<String> dict, String tmp) {
if (s == null || s.length() == 0)
return;
int length = s.length();
int beg = 0, end = length;
int index = 0;
while (beg < end) {
end = length - index;
if (beg < end) {
String str = s.substring(beg, end);
if (dict.contains(str)) {
if (end == length) {
list.add((tmp + " " + str).trim());
} else {
wordBreak(s.substring(end), dict, tmp + " " + str);
}
}
index++;
} else {
break;
}
}
}