更新 0139.单词拆分.md Java代码

添加另一种思路的背包算法,比题解中的背包算法速度更快
This commit is contained in:
zhicheng lee
2022-09-13 22:24:58 +08:00
committed by GitHub
parent 0dad9a5f7c
commit 7e3823d619

View File

@ -250,6 +250,26 @@ class Solution {
}
}
// 另一种思路的背包算法
class Solution {
public boolean wordBreak(String s, List<String> wordDict) {
boolean[] dp = new boolean[s.length() + 1];
dp[0] = true;
for (int i = 1; i <= s.length(); i++) {
for (String word : wordDict) {
int len = word.length();
if (i >= len && dp[i - len] && word.equals(s.substring(i - len, i))) {
dp[i] = true;
break;
}
}
}
return dp[s.length()];
}
}
// 回溯法+记忆化
class Solution {
private Set<String> set;