這個題意要理解透了才行,轉換成我自己理解的題意:
有乙個字串s,還有乙個單詞字典worddict,問題的關鍵是能否用worddict裡的單詞組合出字串s。
這個題可以使用動態規劃來解決。動態規劃最重要的是狀態的定義,好的狀態定義能夠使解題非常簡便。
狀態定義:
\(dp[i]\):長度為i的字串能否拆成worddict裡邊的單詞組合
狀態轉移方程:
\(dp[i] = dp[j] && substr(j, i) in worddict, (0 <= j < i)\)
初始狀態:
\(dp[0] = true\)
class solution }}
return dp[s.size()];
}};// dp(i) : 長度為i的字串能否拆成worddict中的一系列字串
// dp(i) : dp(j-1) && s[j, i] in worddict
// dp(0) = 0
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 ...