• <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>

            雁過無痕

              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::

            《編程之美》讀書筆記24  3.5 最短摘要的生成

            當初看這道題時,看了好了幾遍都沒看懂。后來總算弄明白:給出的字符串是用其它程序分好詞的,關鍵字符串也是用其它程序分好詞的,而不是按用戶直接輸入的字符串。比如書上給的例子:“微軟亞洲研究院  使命”,不是按空格分成兩個關鍵詞,“微軟亞洲研究院”和“使命”,而是按其它程序分成:“微軟”、“亞洲”、“研究院”和“使命”四個關鍵詞。

            “最短摘要”應該是指:包含所有關鍵字(關鍵字不要求按用戶輸入的順序排列)的長度最短的摘要。書上的解法,把“最短摘要”理解成包含所有關鍵字且詞個數最少的摘要。

               

            弄清了問題,解決起來就很簡單:

                1 反復讀入字符串,直到碰到關鍵字(可以用setunordered_set)。

                2 更新該關鍵字字符串最近出現的位置。

                3 若已經找到所有的關鍵字,根據這些關鍵字的位置最小/最大值,計算摘要長度

                  可以用set來維護這些位置值。

                  (實際上,只要求維護位置的最小值,還可以自行實現一個堆結構,節省空間。)

            根據位置值計算長度,需要先計算出分詞后的字符串,在未分詞的字符串的位置。

                4 記錄長度最短的摘要

             

            若有m個關鍵字,待查詢字符串有n個,時間復雜度大概為:O(n*log m)

            (關鍵字一般都很短,可以認為對關鍵字間的比較、計算哈希值時間復雜度為O(1)

              另外,將關鍵字映射到數字,減少字符串比較,能進一步提高效率。

             

             

            最短摘要

             

             


            作者: flyinghearts
            出處: http://www.cnblogs.com/flyinghearts/
            本文采用知識共享署名-非商業性使用-相同方式共享 2.5 中國大陸許可協議進行許可,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。

             

             

             

             

             

             

             

             

             

             

             

             

            posted on 2011-03-27 22:11 flyinghearts 閱讀(1547) 評論(0)  編輯 收藏 引用 所屬分類: 編程之美
            亚洲国产精品高清久久久| 欧美久久一区二区三区| 77777亚洲午夜久久多人| 久久精品中文字幕大胸| 久久亚洲精品国产亚洲老地址| 亚洲va久久久久| 狠狠狠色丁香婷婷综合久久俺| 国产精品免费久久| 久久久久久国产精品美女| 国产精品久久永久免费| 亚州日韩精品专区久久久| 一本久久a久久精品vr综合| 精品一久久香蕉国产线看播放 | 日批日出水久久亚洲精品tv| 久久人与动人物a级毛片| 亚洲国产成人久久综合一| 久久久久se色偷偷亚洲精品av | 婷婷久久久亚洲欧洲日产国码AV| 免费精品久久久久久中文字幕 | 一本色道久久88综合日韩精品| 中文字幕乱码久久午夜| 久久青青草原国产精品免费| 亚洲国产成人久久一区久久| 久久这里只精品国产99热| 久久亚洲精品人成综合网| 久久综合久久综合亚洲| 精品一久久香蕉国产线看播放| 国产精品免费福利久久| 久久亚洲私人国产精品| 亚洲精品乱码久久久久66| 午夜精品久久影院蜜桃| 欧美国产精品久久高清| 一级做a爰片久久毛片16| 国产精品久久自在自线观看| 久久国产精品99精品国产987| 欧美一区二区三区久久综合| 亚洲AV成人无码久久精品老人| 色99久久久久高潮综合影院| 久久亚洲天堂| 亚洲va久久久久| 伊人久久大香线蕉av一区|