LeetCode 139 單詞拆分

2021-09-29 10:02:25 字數 897 閱讀 5653

給定乙個非空字串 s 和乙個包含非空單詞列表的字典 worddict,判定 s 是否可以被空格拆分為乙個或多個在字典**現的單詞。

說明:拆分時可以重複使用字典中的單詞。

你可以假設字典中沒有重複的單詞。

示例 1:

輸入: s = "leetcode", worddict = ["leet", "code"]

輸出: true

解釋: 返回 true 因為 "leetcode" 可以被拆分成 "leet code"。

示例 2:

輸出: true

注意你可以重複使用字典中的單詞。

示例 3:

輸入: s = "catsandog", worddict = ["cats", "dog", "sand", "and", "cat"]

輸出: false

思路:如下所示。

舉例子:當i = 5的時候,j 從0開始進行匹配判斷,j 先進行  0-4的判斷,(由於0-4已經匹配,所以不進行2/3/4步驟的掃瞄)。當 i = 6的時候,j 的範圍從 0-5, 1-5, 2-5, 3-5, 4-5,5-5, 進行掃瞄判斷,均不成立,dp[6] = 0。 然後 i = 7,繼續進行。 注意判斷條件是:所選區間的頭的dp=1, 尾的dp=1,此時說明這段區間存在字典中。

return dp[s.size()]; // 最後乙個為1 ,說明都能匹配}};

leetcode 139 單詞拆分

題目 給定乙個非空字串 s 和乙個包含非空單詞列表的字典 worddict,確定 s 是否可以被空格分割為乙個或多個在字典裡出現的單詞。你可以假設字典中無重複的單詞。例如,給出 s leetcode dict leet code 返回 true 因為 leetcode 可以被切分成 leet cod...

leetcode139 單詞拆分

給定乙個非空字串 s 和乙個包含非空單詞列表的字典 worddict,判定 s 是否可以被空格拆分為乙個或多個在字典中出現的單詞。說明 拆分時可以重複使用字典中的單詞。你可以假設字典中沒有重複的單詞。示例 1 輸入 s leetcode worddict leet code 輸出 true 解釋 返...

leetcode139 單詞拆分

給定乙個非空字串 s 和乙個包含非空單詞列表的字典 worddict,判定 s 是否可以被空格拆分為乙個或多個在字典 現的單詞。動態規劃,dp i 表示前i個字元能否被拆分 class solution def wordbreak self,s str,worddict list str bool ...