LeetCode 139 单词拆分

编程入门 行业动态 更新时间:2024-10-25 20:18:49

LeetCode 139 <a href=https://www.elefans.com/category/jswz/34/1769906.html style=单词拆分"/>

LeetCode 139 单词拆分

给你一个字符串 s 和一个字符串列表 wordDict 作为字典。请你判断是否可以利用字典中出现的单词拼接出 s 。

注意:不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。

示例 1:

输入: s = "leetcode", wordDict = ["leet", "code"]
输出: true
解释: 返回 true 因为 "leetcode" 可以由 "leet" 和 "code" 拼接成。

示例 2:

输入: s = "applepenapple", wordDict = ["apple", "pen"]
输出: true
解释: 返回 true 因为 "applepenapple" 可以由 "apple" "pen" "apple" 拼接成。
     注意,你可以重复使用字典中的单词。

示例 3:

输入: s = "catsandog", wordDict = ["cats", "dog", "sand", "and", "cat"]
输出: false
 

提示:

1 <= s.length <= 300
1 <= wordDict.length <= 1000
1 <= wordDict[i].length <= 20
s 和 wordDict[i] 仅有小写英文字母组成
wordDict 中的所有字符串 互不相同

解题思路:

动态规划

单词拆分 - 单词拆分 - 力扣(LeetCode)

Python代码:

class Solution:def wordBreak(self, s: str, wordDict: List[str]) -> bool:n = len(s)dp = [False] * (n + 1)dp[0] = Truefor i in range(1, n + 1):for j in range(i):if dp[j] and s[j: i] in wordDict:dp[i] = Truebreakreturn dp[-1]

更多推荐

LeetCode 139 单词拆分

本文发布于:2024-02-27 06:06:10,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1705468.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:单词   LeetCode

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!