• <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 閱讀(313) 評論(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是可讀性最強的了!
            亚洲AV无码久久精品蜜桃| 婷婷综合久久狠狠色99h| 99久久中文字幕| 久久精品亚洲中文字幕无码麻豆 | 亚洲国产成人久久综合碰| 精品久久久久久亚洲| 久久国产色AV免费观看| 国内精品久久久久久久97牛牛| 亚洲va久久久噜噜噜久久| 免费久久人人爽人人爽av| 久久精品国产99久久久古代 | 久久精品国产99久久久| 久久久久久无码Av成人影院| 久久超乳爆乳中文字幕| 国产精品禁18久久久夂久| 69久久夜色精品国产69| 精品无码久久久久国产| 91精品无码久久久久久五月天| 91久久精品国产91性色也| 色欲综合久久躁天天躁| 久久精品国产亚洲AV香蕉| 久久久久久人妻无码| 国产精品热久久毛片| 国产欧美久久久精品影院| 久久久久久国产精品免费无码 | 伊人久久大香线蕉av不卡| 精品久久久久久久久午夜福利| 99国内精品久久久久久久| 婷婷久久综合九色综合九七| 伊人久久大香线焦AV综合影院| 97久久香蕉国产线看观看| 久久久亚洲精品蜜桃臀| 色综合久久久久综合体桃花网 | 国产aⅴ激情无码久久| 婷婷久久综合九色综合98| 精品久久久久久久国产潘金莲 | 精品久久一区二区| 狠狠色丁香婷婷久久综合五月| 成人国内精品久久久久影院| 久久久久亚洲av毛片大| 丁香狠狠色婷婷久久综合|