dp解决方案,状态转移方程
f[i]代表字符串第i位能否被分割
f[i]=(f[j]&&s.substring(j+1,i+1))||(f[j]&&s.substring(j+2,i+1))||...
public class Solution {
public boolean wordBreak(String s, Set<String> dict) {
boolean[] f = new boolean[s.length()];
for(int i =0; i<s.length(); i++){
if(dict.contains(s.substring(0, i+1))){
f[i]=true;
continue;
}else {
for(int j=0; j<i; j++){
if(f[j] && dict.contains(s.substring(j+1,i+1))){
f[i]=true;
continue;
}
}
}
}
return f[s.length()-1];
}
}