Leetcode-139. Word Break
来源:互联网 发布:上海雅居乐万豪java 编辑:程序博客网 时间:2024/06/05 15:14
前言:为了后续的实习面试,开始疯狂刷题,非常欢迎志同道合的朋友一起交流。因为时间比较紧张,目前的规划是先过一遍,写出能想到的最优算法,第二遍再考虑最优或者较优的方法。如有错误欢迎指正。博主首发CSDN,mcf171专栏。
博客链接:mcf171的博客
——————————————————————————————
Given a string s and a dictionary of words dict, determine if s can be segmented into a space-separated sequence of one or more dictionary words.
For example, given
s = "leetcode"
,
dict = ["leet", "code"]
.
Return true because "leetcode"
can be segmented as "leet code"
.
public class Solution { private Set<String> invalidStr = new HashSet<String>(); public boolean wordBreak(String s, Set<String> wordDict) { boolean flag = false; if(wordDict.contains(s)) return true;if(invalidStr.contains(s)) return false; for(int i = 1; i < s.length(); i ++){ String subString = s.substring(0,i); if(wordDict.contains(subString)) flag = wordBreak(s.substring(i,s.length()),wordDict); if(!flag)invalidStr.add(s); else break; } return flag; }}
后来我想了想,我也可以把对的保存了。。不过我这样还是有点麻烦,看了下dp的思路,其实我这个也算是dp,用一个dp的array保存哪些位置是true确实更好一些。。Your runtime beats 16.34% of java submissions.
public class Solution { private Set<String> invalidStr = new HashSet<String>(); private Set<String> validStr = new HashSet<String>(); public boolean wordBreak(String s, Set<String> wordDict) { boolean flag = false; if(wordDict.contains(s) || validStr.contains(s)) return true;if(invalidStr.contains(s)) return false; for(int i = 1; i < s.length(); i ++){ String subString = s.substring(0,i); if(wordDict.contains(subString)) flag = wordBreak(s.substring(i,s.length()),wordDict); if(!flag)invalidStr.add(s); else{validStr.add(s); break;} } return flag; }}
0 0
- LeetCode 139. Word Break
- [LeetCode]139.Word Break
- [leetcode] 139.Word Break
- leetcode 139. Word Break
- [LeetCode]139. Word Break
- 139. Word Break LeetCode
- LeetCode-139.Word Break
- LeetCode *** 139. Word Break
- LeetCode 139. Word Break
- LeetCode 139. Word Break
- [leetcode] 139. Word Break
- [leetcode] 139. Word Break
- [LeetCode] 139. Word Break
- [leetcode]139. Word Break
- Leetcode-139. Word Break
- Leetcode-139. Word Break
- Leetcode 139. Word Break
- leetcode 139. Word Break
- 微信公众平台开发:进入篇(Web App开发入门)
- JQuery笔记一 :选择器和事件【蓝鸥HTML5出品】
- 自己写Java Web遇到的坑(1)——JSP中的外部引用相对地址出错
- 安卓高级9 用原生intent分享
- ubuntu 安装g++
- Leetcode-139. Word Break
- MongoDB索引笔记
- 捕获异常信息并写入日志文件
- Eclipse将java项目导出jar包详解
- JQuery笔记二 :动画效果【蓝鸥HTML5出品】
- Hi3516A开发-- 常见问题FAQs
- mini2440 nandflash驱动移植
- 博为峰Java面试题-JavaSE之抽象类
- &转义与反转义