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

            對list的查找的另一種作法

            大家用了stl的list后都知道,他的節點在內存中的位置是固定的,但是當刪除或查找某個指定節點時需要遍歷,這樣當list很大時,這個遍歷過程未免有些性能詬病。當然大家會很容易想到hash_map,但是hash_map在節點數超過一定數量后也會進行“擴容”操作,這樣存在大量的對象的搬遷。我們看看list的特點:結構簡單,節點的內存地址固定,添加刪除操作快捷;再看看hash_map的特點:查找速度快,節點的內存地址可能不固定(依賴是否擴容),如果我們將兩者結合可以解決某些特殊應用場合(指那些可能需要記錄節點內存位置的場合)。用一個list和一個hash_map來管理一個數據列表,list記錄具體的節點的數據,hash_map用于記錄list的迭代器地址,這樣需要查找一個鍵值為key的對象在list中的節點時,可以通過hash_map來進行定位,具體性能如何沒有測試過,應該不會比list的直接遍歷查找慢,大家可以自己試試。

            posted on 2006-06-10 16:46 PeakGao 閱讀(1484) 評論(3)  編輯 收藏 引用 所屬分類: C++技術

            評論

            # re: 對list的查找的另一種作法 2006-06-10 17:02 LOGOS

            很想跟你說,iterator是不穩定的對象,insert,delete或者其他一些操作,都會使得當前擁有的iterator失效。  回復  更多評論   

            # re: 對list的查找的另一種作法 2006-06-11 21:06 PeakGao

            @LOGOS
            是的,iterator會隨著節點的增刪而導致prev,next節點地址無效,你不要去真正記錄iterator的地址,記錄節點地址就可以了  回復  更多評論   

            # re: 對list的查找的另一種作法 2012-02-23 17:35 g

            grt  回復  更多評論   

            <2007年6月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            1234567

            導航

            統計

            常用鏈接

            留言簿(9)

            隨筆分類(67)

            隨筆檔案(65)

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            性欧美丰满熟妇XXXX性久久久 | 久久99精品久久久久久野外| 久久精品成人免费看| 久久成人18免费网站| 狠狠综合久久综合88亚洲| 亚洲欧美日韩精品久久| 精品久久久久成人码免费动漫| 日韩精品久久久久久免费| 久久久这里有精品中文字幕| 日日躁夜夜躁狠狠久久AV| 久久婷婷人人澡人人| 国内精品九九久久久精品| 亚洲欧美一区二区三区久久| 国产ww久久久久久久久久| 久久久久久人妻无码| 国产精品久久久久久久人人看| 久久久久综合网久久| 久久午夜伦鲁片免费无码| 国产精品久久久久蜜芽| 久久久无码精品亚洲日韩软件| 99热精品久久只有精品| 粉嫩小泬无遮挡久久久久久| 久久婷婷五月综合97色 | 亚洲国产成人久久精品99| 久久高潮一级毛片免费| 精品国产一区二区三区久久蜜臀| 99久久777色| 久久国产免费观看精品| 久久狠狠色狠狠色综合| 久久99精品国产99久久| AV狠狠色丁香婷婷综合久久| 精品综合久久久久久888蜜芽| 久久亚洲精品中文字幕| 久久精品国产清高在天天线| 久久ZYZ资源站无码中文动漫 | 国产精品99久久精品| 欧美一区二区精品久久| 国产精品青草久久久久福利99| 99久久综合狠狠综合久久| 久久青青国产| 亚洲精品乱码久久久久久按摩|