个人简历制作网站,湖北省节能建设网站,如何获取网站根目录,大人和孩做爰网站题意#xff1a;给定一个string以及一个wordDict,要求返回一个vectorstring #xff0c;这个vector中的string都是word Dict中的组合
Input: s “catsanddog”, wordDict [“cat”,“cats”,“and”,“sand”,“dog”] Output: [“cats and dog”,“cat sand dog”…题意给定一个string以及一个wordDict,要求返回一个vectorstring 这个vector中的string都是word Dict中的组合
Input: s “catsanddog”, wordDict [“cat”,“cats”,“and”,“sand”,“dog”] Output: [“cats and dog”,“cat sand dog”]
想法backtracking, 想象一下每一轮你要干什么首先拿wordDict中的每个单词去填写如果对不上号你就填下一个单词直到最后填到单词末尾就结束了。
class Solution {
public:vectorstring ret;vectorstring wordBreak(string s, vectorstring wordDict) {dfs(s, , 0 , wordDict);return ret;}void dfs(string s, string cur, int st, vectorstring wordDict) {if (st s.size()) {cur.pop_back();ret.push_back(cur);}for(auto word : wordDict) {if(st word.size() s.size()) {if(word s.substr(st, word.size())) {string temp cur;cur word;cur ;dfs(s, cur, stword.size(), wordDict);cur temp;}}}}
};时间复杂度是指数级别的递归栈空间是O(n)