首页 > 编程语言 >【算法训练营day46】LeetCode139. 单词拆分 多重背包基础

【算法训练营day46】LeetCode139. 单词拆分 多重背包基础

时间:2023-02-18 15:46:34浏览次数:53  
标签:训练营 单词 拆分 day46 wordDict LeetCode139 dp

LeetCode139. 单词拆分

题目链接:139. 单词拆分

独上高楼,望尽天涯路

没什么思路。

慕然回首,灯火阑珊处

挖个坑,二刷的时候填。

class Solution {
public:
    bool wordBreak(string s, vector<string>& wordDict) {
        unordered_set<string> wordSet(wordDict.begin(), wordDict.end());
        vector<bool> dp(s.size() + 1, false);
        dp[0] = true;
        for (int i = 1; i <= s.size(); i++) {   // 遍历背包
            for (int j = 0; j < i; j++) {       // 遍历物品
                string word = s.substr(j, i - j); // substr(起始位置,截取的个数)
                if (wordSet.find(word) != wordSet.end() && dp[j]) {
                    dp[i] = true;
                }
            }
        }
        return dp[s.size()];
    }
};

标签:训练营,单词,拆分,day46,wordDict,LeetCode139,dp
From: https://www.cnblogs.com/BarcelonaTong/p/17132762.html

相关文章