当前位置: 首页 > news >正文

力扣139 单词拆分 java实现

139.单词拆分

给你一个字符串s和一个字符串列表wordDict作为字典。如果可以利用字典中出现的一个或多个单词拼接出s则返回true

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

示例 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
  • swordDict[i]仅由小写英文字母组成
  • wordDict中的所有字符串互不相同

该题也属于完全背包问题,字典中的物品可以重复使用。dp[n + 1]表示当前位置能否被 字典里的单词组成。每次遍历字典,则只需要判断和当前单词是否相同,或是取出长度为当前单词的长度的单词,判断是否相同,且前面单词是否已经能用词典表示。

public static void main(String[] args) { // 测试用 String s = "leetcode"; List<String> nums = new ArrayList<>(); nums.add("leet"); nums.add( "code"); System.out.println(wordBreak(s, nums)); } public static boolean wordBreak(String s, List<String> wordDict) { int n = s.length(); boolean[] dp = new boolean[n + 1]; for (int i = 0; i <= n; i++) { String target = s.substring(0, i); for (int j = 0; j < wordDict.size(); j++) { String temp = wordDict.get(j); if (temp.equals(target)){ dp[i] = true; break; } int m = temp.length(); if (i >= m){ String target1 = target.substring(i - m, i); if (target1.equals(temp) && dp[i - m]){ dp[i] = true; } } } } System.out.println(Arrays.toString(dp)); return dp[n]; }

以上为记录分享用,代码较差请见谅

http://www.jsqmd.com/news/253711/

相关文章:

  • 鸿蒙启动后台服务运行
  • 技术解码:Character.ai 如何实现大模型实时推理性能 2 倍提升
  • 文档分享二维码生成与应用全攻略
  • 鸿蒙list第三个参数的意思
  • UE5 C++(36):子弹类型设置
  • 收藏!2026年大模型风口下,程序员的生存与翻盘指南
  • AI营销内容如何将成本锐减90%?2026企业终极指南
  • 【毕业设计】SpringBoot+Vue+MySQL 中小企业设备管理系统平台源码+数据库+论文+部署文档
  • 鸿蒙中加密库使用
  • 鸿蒙的“官方推荐”架构MVVM
  • 地产AI营销内容榜单:原圈科技领航,解构高增长新范式
  • 收藏!大模型智能体(Agent)入门:从概念到ReAct范式实操全解析
  • 2026出海GEO榜单发布!原圈科技如何凭AI破解增长焦虑?
  • 深度解析 Elasticsearch 8.13.4 范围查询 DSL
  • 【收藏级】RAG技术全解析:从原理到实战,小白也能搞定大模型知识增强
  • 【Day31】Web 开发入门:HTTP 协议详解(请求 / 响应、状态码、请求头)
  • GEO服务商榜单:不懂AI搜索优化?2026首选原圈科技
  • Elasticsearch 8.13.4 地理范围查询实战指南
  • 2026跨境GEO服务商测评:破解获客焦虑,原圈科技领跑AI增长
  • IntelliJ IDEA 配置插件目录
  • 【Day32】Tomcat 服务器:安装、配置与 Web 应用部署
  • GEO服务商深度评测榜单:原圈科技凭何领跑AI营销赛道?
  • 瑞维美尼:全球首款menin抑制剂,以靶向创新改写难治性白血病格局
  • 收藏级干货!RAG核心原理+实战场景全解析,小白也能懂的大模型必备技术
  • GEO服务商榜单:Jeep、国金证券力荐,原圈科技如何领跑AI营销?
  • 适应症双扩+缓解率超70%:瑞维美尼的临床疗效与适用人群
  • 30岁转行逆袭:从建筑到AI,斩获北美大厂offer的蜕变之路
  • 口腔伤口可以用什么药物促进愈合
  • 无线智能小车的软件设计与实现
  • AI大模型入门必看:AGI、RAG、AIGC核心概念详解,收藏不迷路