• <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 閱讀(303) 評論(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是可讀性最強的了!
            久久精品成人免费网站| 99久久精品无码一区二区毛片 | 精品综合久久久久久97| 亚洲中文字幕久久精品无码APP| 久久超乳爆乳中文字幕| 婷婷久久综合九色综合98| 久久91精品国产91久| 99久久精品免费| 久久亚洲精品无码aⅴ大香| 久久综合精品国产二区无码| 性做久久久久久久久老女人| 国产精品久久久久…| 蜜臀av性久久久久蜜臀aⅴ麻豆 | 精品久久久久成人码免费动漫| 无码超乳爆乳中文字幕久久| 亚洲国产高清精品线久久| 国产高潮国产高潮久久久91 | 久久久av波多野一区二区| 9191精品国产免费久久| 天堂久久天堂AV色综合| 久久人人爽人爽人人爽av| 97久久精品人人做人人爽| 亚洲国产精品无码久久98| 日本高清无卡码一区二区久久 | 欧美大香线蕉线伊人久久| 亚洲乱码日产精品a级毛片久久| 777米奇久久最新地址| 国内精品伊人久久久久777| 久久国产精品免费一区二区三区 | 久久久亚洲欧洲日产国码二区| 久久国产综合精品五月天| 久久伊人色| 国产AV影片久久久久久| 国产精品久久国产精麻豆99网站| 人妻精品久久久久中文字幕一冢本| 精品国产乱码久久久久软件| 日本久久久久久久久久| 午夜精品久久久久久影视777 | 国产综合久久久久| 久久www免费人成看国产片| 99久久无码一区人妻|