力扣-139.单词拆分
题目链接
139.单词拆分
class Solution {public boolean wordBreak(String s, List<String> wordDict) {boolean[] dp = new boolean[s.length() + 1];dp[0] = true;for (int i = 0; i <= s.length(); i++) {for (int j = 0; j < wordDict.size(); j++) {int len = wordDict.get(j).length();if (len <= i && wordDict.get(j).equals(s.substring(s.length() - len, s.length())) && dp[i - len] == true) {dp[i] = true;}}}return dp[s.length()];}
}
小结:完全背包问题,先遍历背包,再遍历物品,无论题目如何变化,解法都是固定的。因为本题wordDict.size()
可能比较大,上面的解法并不是最快,用集合会好一些。