• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Uriel's Corner

            Research Associate @ Harvard University / Research Interests: Computer Vision, Biomedical Image Analysis, Machine Learning
            posts - 0, comments - 50, trackbacks - 0, articles - 594

            [LeetCode]Word Break II-2014.01.13

            Posted on 2014-01-14 03:13 Uriel 閱讀(319) 評論(1)  編輯 收藏 引用 所屬分類: LeetCode
            這題是Word Break的加強版,要輸出所有可能的單詞組合,于是想到用DFS,string操作還是不熟啊,搞到吐血之后,還是參照了解題報告的寫法:

             1 class Solution {
             2 public:
             3     int max_len, min_len;
             4     vector<string> res;
             5     vector<string> tp_res;
             6     
             7     void save_sentence() {
             8         string s = "";
             9         for(int i = tp_res.size() - 1; i >= 0; --i) s += tp_res[i] + string(" ");
            10         s.pop_back();
            11         res.push_back(s);
            12     }
            13     
            14     void sov(string s, unordered_set<string> &dic) {
            15         int len = s.size();
            16         if(!len) {
            17             save_sentence();
            18             return;
            19         }
            20         for(int i = min_len; i <= min(max_len, len); ++i) {
            21             string tp = s.substr(len - i);
            22             if(dic.find(tp) != dic.end()) {
            23                 tp_res.push_back(tp);
            24                 sov(s.substr(0, len - i), dic);
            25                 tp_res.pop_back();
            26             }
            27         }
            28     }
            29     
            30     vector<string> wordBreak(string s, unordered_set<string> &dic) {
            31         res.clear();
            32         min_len = 100000, max_len = 0;
            33         unordered_set<string>::iterator it;
            34         for(it = dic.begin(); it != dic.end(); ++it) {
            35             max_len = max_len > it->size() ? max_len : it->size();
            36             min_len = min_len < it->size() ? min_len : it->size();
            37         }
            38         sov(s, dic);
            39         return res;
            40     }
            41 };

            Feedback

            # re: [LeetCode]Word Break II-2014.01.13  回復  更多評論   

            2014-12-30 07:18 by mandy
            萬分感謝! 你的code是可讀性最強的了!
            伊人久久大香线蕉综合网站| 久久人人超碰精品CAOPOREN| 99久久这里只有精品| 国产精品免费久久久久影院 | 国产精品欧美久久久久无广告| 久久www免费人成看国产片| 伊人久久大香线蕉av不变影院| 中文字幕亚洲综合久久2| 一本久久综合亚洲鲁鲁五月天亚洲欧美一区二区 | 狠狠综合久久AV一区二区三区| 国内精品伊人久久久久av一坑| 亚洲精品高清一二区久久| 久久综合久久综合久久综合| 亚洲午夜久久久久久噜噜噜| 久久亚洲国产成人影院网站 | 久久成人精品视频| 久久婷婷色综合一区二区| 精品无码久久久久久国产| 国内精品久久人妻互换| 日本久久久久亚洲中字幕| 国内精品久久久久影院老司| 久久国产精品免费一区| 国产精品99久久不卡| 色成年激情久久综合| 亚洲国产精品久久66| 色成年激情久久综合| 国产成人久久精品麻豆一区| 青青草原综合久久| 久久综合久久综合久久| 久久电影网2021| 99精品伊人久久久大香线蕉| 久久99精品国产麻豆宅宅| 狠狠色丁香久久综合婷婷| 国产精品久久久久久久久鸭 | 国产一区二区三区久久| 国产精品久久一区二区三区| 国产精品久久久久aaaa| 亚洲午夜精品久久久久久人妖| 国产精品成人无码久久久久久| 久久久久亚洲?V成人无码| 亚洲国产精品嫩草影院久久|