当前位置:   article > 正文

代码随想录算法训练营Day46|139.单词拆分

代码随想录算法训练营Day46|139.单词拆分

139.单词拆分

题目链接:139.单词拆分
文档链接:139.单词拆分
视频链接:动态规划之完全背包,你的背包如何装满?| LeetCode:139.单词拆分

C++实现

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);
                if(wordSet.find(word) != wordSet.end() && dp[j]){
                    dp[i] = true;
                }
            }
        }
        return dp[s.size()];
    }
};
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号