目录
- 一、题目解析
- 二、算法原理
- 三、代码实现
一、题目解析
二、算法原理
三、代码实现
class Solution {
public:bool wordBreak(string s, vector<string>& wordDict) {int n = s.size();unordered_set<string> hash;for (auto x : wordDict) hash.insert(x);vector<bool> dp(n + 1);dp[0] = true;s = ' ' + s;for (int i = 1; i <= n; i++){for (int j = i; j >= 1; j--){if (dp[j - 1] && hash.count(s.substr(j, i - j + 1))){dp[i] = true;break;}}}return dp[n];}
};