• <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是可讀性最強的了!
            国产精品一久久香蕉产线看| 国产精品美女久久福利网站| 狠狠色丁香久久婷婷综合五月| 热re99久久精品国99热| 精品久久久无码人妻中文字幕豆芽 | 国产精品美女久久久久久2018| 99麻豆久久久国产精品免费| 93精91精品国产综合久久香蕉| 精品人妻伦九区久久AAA片69| 亚洲精品午夜国产va久久| 久久精品国产亚洲AV无码麻豆| 久久人妻少妇嫩草AV无码蜜桃| 亚洲精品无码久久久久去q| 免费观看久久精彩视频| 久久中文字幕精品| 99久久精品免费| 欧美丰满熟妇BBB久久久| 午夜精品久久久久久影视777| 久久精品国产亚洲av水果派| 国产精品久久久久久久午夜片| 久久夜色精品国产噜噜亚洲AV| 久久精品国产亚洲AV不卡| 午夜不卡久久精品无码免费| 久久久亚洲精品蜜桃臀| 精品久久久久久亚洲精品| 久久久久亚洲av成人网人人软件 | 久久国产综合精品五月天| 国产精品久久久久国产A级| 怡红院日本一道日本久久 | 女同久久| 精品久久久久久亚洲| 久久久久亚洲av成人网人人软件| 91精品国产91久久久久久| 国内精品久久久久影院日本 | 日韩精品久久无码中文字幕| 久久久久久午夜精品| 无码人妻久久一区二区三区蜜桃| 99久久精品无码一区二区毛片| 国产一级持黄大片99久久| 日韩精品久久久久久| 9191精品国产免费久久|