139. 单词拆分

87 阅读1分钟

139. 单词拆分

dp[0] = true;初始值

if (dp[j] && set.has(s.slice(j, i))) {其中[0,j]能查出且[j,i]存在于字典中,说明 dp[i]是存在的

var wordBreak = (s, wordDict) => {
  var n = s.length;
  var set = new Set(wordDict);
  var dp = new Array(n + 1).fill(false);
  dp[0] = true;
  for (var i = 1; i <= n; i++) {
    for (var j = 0; j < i; j++) {
      if (dp[j] && set.has(s.slice(j, i))) {
        dp[i] = true;
        break;
      }
    }
  }
  return dp[n];
};