本文主要是介绍Day46| 139 单词拆分,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
139 单词拆分
139 单词拆分
class Solution {
public:bool wordBreak(string s, vector<string>& wordDict) {unordered_set<string> wordset(wordDict.begin(), wordDict.end());//dp数组来判断i长度时能不能被字典里面的单词所组成vector<bool> dp(s.size()+1, false);dp[0] = true;for(int i = 0; i <= s.size(); i++){//背包for(int j = 0; j < i; j++){//相当于另一个执行背包的指针,负责寻找字符串里面哪些可以在wordset里面被找到string word = s.substr(j, i - j);//dp[j] == true 是为了保证某个词符合的时候之前的词要可以才行if(wordset.find(word) != wordset.end() && dp[j] == true){dp[i] = true;}}}return dp[s.size()];}
};
这篇关于Day46| 139 单词拆分的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!