题目链接
题目描述
给定一个字符串s和一组单词dict,判断s是否可以用空格分割成一个单词序列,使得单词序列中所有的单词都是dict中的单词(序列可以包含一个或多个单词)。
例如:
给定s=“nowcode”;
dict=[“now”, “code”].
返回true,因为"nowcode"可以被分割成"now code".
代码
public class Solution {
public boolean wordBreak(String s, Set<String> dict) {
boolean[] ans = new boolean[s.length()+1];
ans[0] = true;
for (int i = 1; i <= s.length(); ++i) {
for (int j = i - 1; j >= 0; --j) {
if (ans[j] && dict.contains(s.substring(j,i))) {
ans[i] = true;
break;
}
}
}
return ans[s.length()];
}
}
思路