G面经Prepare: Search word delete sequence in dictionary
2016-01-13 09:56
441 查看
给一个单词一个字典,每次删除单词里任一个字母直到剩下一个字母,形成一个序列,比如office->offce->ofce->ofc->oc->c。问是否字典里存在一个这种序列
package checkDictExistSequence; import java.util.*; public class Solution { HashSet<String> dict = new HashSet<String>(); public String check(String[] arr, String word) { for (String str : arr) dict.add(str); if (checkSeq(new StringBuffer(word))) return "true"; return "false"; } public boolean checkSeq(StringBuffer sb) { if (sb.length() == 1) return true; for (int i=0; i<=sb.length()-1; i++) { char cur = sb.charAt(i); sb.deleteCharAt(i); if (dict.contains(sb.toString())) { if (checkSeq(sb)) return true; } sb.insert(i, cur); } return false; } /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Solution sol = new Solution(); System.out.println(sol.check(new String[]{"offce", "ofce", "ofc", "oc", "c"}, "office")); } }
相关文章推荐
- iOS UITableView(十三) tableView经常用的代理总结和滑动删除
- 8937 build tz file
- 循环中continue和break的区别
- 【FAQ】xcodebuild 签名,提示User interaction is not allowed?
- 于UIImage图片处理详细使用
- iOS UIFont 字体名字大全
- django migrate raise ValueError('The database backend does not accept 0 as a '
- JUI 添加或修改后不自动刷新是怎么回事?
- 键盘和输入框上移
- Data Binding Guide——google官方文档翻译(上)
- 解决build path contains duplicate entry:'src' for project 'XXX'问题
- *Implement Stack using Queues
- js中innerText,value,innerHTML的区别
- [html][easyui]DataGrid 绑定
- Penguins DbTools数据库管理移植差分工具(EXCEL相关
- UITableView的全面解析(一) 待续中...
- UILongPressGestureRecognizer的两次触发
- Easyui form combobox省市区三级联动
- UITableView深入解析 (一) 待续中...
- ios UIView详解~~~~~