Leetcode---word Break II
来源:互联网 发布:圆珠笔头 知乎 编辑:程序博客网 时间:2024/06/05 00:21
Given a string s and a dictionary of words dict, add spaces in s to construct a sentence where each word is a valid dictionary word.
Return all such possible sentences.
For example, given
s = "catsanddog"
,
dict = ["cat", "cats", "and", "sand", "dog"]
.
A solution is ["cats and dog", "cat sand dog"]
.
这题有点难,我只贴出DFS的版本,没过TLE。
这种DFS其实是回溯,backtracing
vector<string> result;bool contain(unordered_set<string> &dict, string s) { unordered_set<string>::iterator ite = dict.find(s); if(ite != dict.end()) return true; else return false; }void f(string s,string temp,unordered_set<string> &dict){ if(contain(dict,s)){ if(temp!="") result.push_back(temp+" "+s); else result.push_back(s); } for(int i=0;i<s.length();i++){ string s0=s.substr(0,i+1); if(contain(dict,s0)){ if(temp!="") f(s.substr(i+1),temp+" "+s0,dict); else f(s.substr(i+1),temp+s0,dict); } }}vector<string> wordBreak(string s, unordered_set<string> &dict) { f(s,"",dict); return result;}
0 0
- [leetcode]Word Break II
- LeetCode:Word Break II
- Leetcode: Word Break II
- [LeetCode] Word Break II
- [LeetCode]Word Break II
- LeetCode | Word Break II
- [LeetCode] - Word Break II
- LeetCode - Word Break II
- Leetcode Word Break II
- [LeetCode] Word Break II
- Word Break II -- LeetCode
- LeetCode (Word Break II )
- Leetcode--Word Break II
- Leetcode: Word Break II
- LeetCode Word Break II
- Word Break II leetcode
- [leetcode]Word Break II
- leetcode -- word break II
- codeforces 520D Cubes
- 复制字符并输出行号
- 简书:电子书时代的“出版经纪人”
- @autoreleasepool内存管理
- MongoDB基础(增、删、改、查)操作
- Leetcode---word Break II
- 第五周 项目1-体验常成员函数
- 第五周项目1-体验常成员函数
- Java 字符串的比较的一点体会
- Spring模板模式和回调接口
- 输出1000到200之间的闰年
- 51单片机 外部中断实验
- 将Execl中的数据导入Sqlite3中
- 欢迎使用CSDN-markdown编辑器