news 2026/10/2 13:57:47

DeepSeek LeetCode 139.单词拆分 Python3实现

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
DeepSeek LeetCode 139.单词拆分 Python3实现

LeetCode 139「单词拆分」要求判断字符串 s 能否被拆分成字典 wordDict 中的一个或多个单词(可重复使用)。


思路:动态规划

定义 dp[i] 表示 s 的前 i 个字符(即 s[0:i])能否被成功拆分。

· 初始状态:dp[0] = True,空字符串默认可以拆分。
· 状态转移:对于每个位置 i,枚举分割点 j(0 ≤ j < i),若 dp[j] == True 且 s[j:i] 在字典中,则 dp[i] = True。
· 最终答案:dp[n],其中 n = len(s)。

为了快速判断子串是否在字典中,将 wordDict 转为 set。


Python3 实现

fromtypingimportListclassSolution:defwordBreak(self,s:str,wordDict:List[str])->bool:word_set=set(wordDict)n=len(s)dp=[False]*(n+1)dp[0]=Trueforiinrange(1,n+1):forjinrange(i):ifdp[j]ands[j:i]inword_set:dp[i]=Truebreakreturndp[n]

复杂度分析

指标 值
时间复杂度 O(n²),其中 n 为字符串长度(每次子串判断 s[j:i] in set 平均 O(1))
空间复杂度 O(n),用于 dp 数组和哈希集合


补充:记忆化 DFS(另一种常见写法)

fromtypingimportListclassSolution:defwordBreak(self,s:str,wordDict:List[str])->bool:word_set=set(wordDict)memo={}defdfs(start:int)->bool:ifstart==len(s):returnTrueifstartinmemo:returnmemo[start]forendinrange(start+1,len(s)+1):ifs[start:end]inword_setanddfs(end):memo[start]=TruereturnTruememo[start]=FalsereturnFalsereturndfs(0)

两种方法均可通过,动态规划更直观,DFS + 记忆化在字典单词长度较短时可能更快。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/2 13:57:07

从Attention到BERT:双向预训练语言模型到底解决了什么问题

从一次文本分类的困境说起 几年前我做过一个情感分类的小任务&#xff0c;数据量不大&#xff0c;大概几千条中文评论。当时第一反应是用 Word2Vec 训练词向量&#xff0c;再套一个 LSTM 做分类。结果跑出来准确率一直卡在 80% 出头&#xff0c;怎么调都上不去。 问题出在哪&am…

作者头像 李华
网站建设 2026/10/2 13:55:37

中南智能工控教育|学完 PLC 别迷茫!带你看透工控圈各类岗位真实日常

中南智能工控教育知道不少学员结束 PLC 课程后&#xff0c;手上练过一堆样机案例&#xff0c;正想有一份好工作来大施拳脚。各大公司招聘标题五花八门&#xff0c;电气技术员、调试工程师、非标工程师看得眼花缭乱&#xff0c;岗位名字听着高大上&#xff0c;实际上班到底干点啥…

作者头像 李华
网站建设 2026/10/2 13:55:20

yanshee 机器人开发实战:从树莓派到Python编程

1. 开箱即玩&#xff1a;你的第一台智能伙伴要是你心里头对学习机器人编程这点事挺感兴趣, 可是又觉得那些厂子里头的机械手臂, 还有那套特别难搞的ROS系统, 门槛实在是在天上飞, 太高了的话, 那么这架机器人恐怕那就是专门为你一个人量着身体尺寸打造出来的梦中情机。我第一次…

作者头像 李华
网站建设 2026/10/2 13:53:14

等保2.0可信验证动态实现与合规实践全解析

做了几年等保测评整改&#xff0c;我明显感觉到大家都卡在同一个地方&#xff1a;防火墙、堡垒机、日志审计这些传统安全设备谁都会买&#xff0c;但每次聊到“可信验证”&#xff0c;连干了多年安全的老人都容易含糊其辞。等保2.0里面对这块的要求写得明明白白&#xff0c;核心…

作者头像 李华
网站建设 2026/10/2 13:53:13

tlb finish_asid_transition

finish_asid_transition 是 AMD 广播 TLB 失效&#xff08;Broadcast TLB Invalidation&#xff09;补丁集中的关键同步函数。它的核心任务是&#xff1a;在完成一次广播 TLB 刷新后&#xff0c;确认所有正在运行该进程的 CPU 都已经切换到了新的全局 ASID&#xff0c;然后清除…

作者头像 李华
网站建设 2026/10/2 13:52:51

西安本地中小商户的线上获客:从付费投放看长期数字资产

这两年我在陕西正方元网络科技有限公司做本地数字化服务&#xff0c;日常打交道的多是西安本地的实体门店和中小企业经营者。下面是一个不算新鲜的观察&#xff1a;越是把获客全部押在付费投放上的商家&#xff0c;越容易在停投之后感到被动。一、传统本地线上运营的现存痛点西…

作者头像 李华