最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vector,map,list,queue的區(qū)別詳細解析

 更新時間:2013年09月23日 09:52:46   作者:  
如果我們需要隨機訪問一個容器則vector要比list好得多。如果我們已知要存儲元素的個數(shù)則vector 又是一個比list好的選擇。如果我們需要的不只是在容器兩端插入和刪除元素則list顯然要比vector好

1。vector  (連續(xù)的空間存儲,可以使用[]操作符)快速的訪問隨機的元素,快速的在末尾插入元素,但是在序列中間歲間的插入,刪除元素要慢,而且如果一開始分配的空間不夠的話,有一個重新分配更大空間,然后拷貝的性能開銷.

2。deque (小片的連續(xù),小片間用鏈表相連,實際上內(nèi)部有一個map的指針,因為知道類型,所以還是可以使用[],只是速度沒有vector快)快速的訪問隨機的元素,快速的在開始和末尾插入元素,隨機的插入,刪除元素要慢,空間的重新分配要比vector快,重新分配空間后,原有的元素不需要拷貝。對deque的排序操作,可將deque先復制到vector,排序后在復制回deque。

3。list   (每個元素間用鏈表相連)訪問隨機元素不如vector快,隨機的插入元素比vector快,對每個元素分配空間,所以不存在空間不夠,重新分配的情況

4。set 內(nèi)部元素唯一,用一棵平衡樹結(jié)構(gòu)來存儲,因此遍歷的時候就排序了,查找也比較快的哦。

5。map 一對一的映射的結(jié)合,key不能重復。

6。stack 適配器,必須結(jié)合其他的容器使用,stl中默認的內(nèi)部容器是deque。先進后出,只有一個出口,不允許遍歷。

7。queue 是受限制的deque,內(nèi)部容器一般使用list較簡單。先進先出,不允許遍歷。

下面是選擇順序容器類型的一些準則 
1.如果我們需要隨機訪問一個容器則vector要比list好得多 。

2.如果我們已知要存儲元素的個數(shù)則vector 又是一個比list好的選擇。 

3.如果我們需要的不只是在容器兩端插入和刪除元素則list顯然要比vector好 

4.除非我們需要在容器首部插入和刪除元素否則vector要比deque好。

5.如果只在容易的首部和尾部插入數(shù)據(jù)元素,則選擇deque.

6.如果只需要在讀取輸入時在容器的中間位置插入元素,然后需要隨機訪問元素,則可考慮輸入時將元素讀入到一個List容器,接著對此容器重新拍學,使其適合順序訪問,然后將排序后的list容器復制到一個vector容器中

相關文章

  • C語言實現(xiàn)簡易連連看游戲

    C語言實現(xiàn)簡易連連看游戲

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)簡易連連看游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • OpenCV中findContours函數(shù)參數(shù)詳解

    OpenCV中findContours函數(shù)參數(shù)詳解

    Opencv中通過使用findContours函數(shù),簡單幾個的步驟就可以檢測出物體的輪廓,很方便。本文將和大家一起探討一下findContours方法中各參數(shù)的含義及用法,感興趣的可以了解一下
    2022-08-08
  • C語言中自動與強制轉(zhuǎn)換全解析

    C語言中自動與強制轉(zhuǎn)換全解析

    在編寫C程序時,類型轉(zhuǎn)換是確保數(shù)據(jù)正確性和一致性的關鍵環(huán)節(jié),無論是隱式轉(zhuǎn)換還是顯式轉(zhuǎn)換,都各有特點和應用場景,本文將詳細探討C語言中的類型轉(zhuǎn)換機制,幫助您更好地理解并在實際編碼中靈活運用這些知識,需要的朋友可以參考下
    2025-02-02
  • 淺談int8_t int64_t size_t ssize_t的相關問題(詳解)

    淺談int8_t int64_t size_t ssize_t的相關問題(詳解)

    下面小編就為大家?guī)硪黄獪\談int8_t int64_t size_t ssize_t的相關問題(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • C語言代碼實現(xiàn)簡單掃雷小游戲

    C語言代碼實現(xiàn)簡單掃雷小游戲

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)掃雷游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-01-01
  • C++ Template 基礎篇(一):函數(shù)模板詳解

    C++ Template 基礎篇(一):函數(shù)模板詳解

    這篇文章主要介紹了C++ Template函數(shù)模板,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • Cocos2d-x中獲取系統(tǒng)時間和隨機數(shù)實例

    Cocos2d-x中獲取系統(tǒng)時間和隨機數(shù)實例

    這篇文章主要介紹了Cocos2d-x中獲取系統(tǒng)時間和隨機數(shù)實例,本文代碼含有大量注釋來講解獲取系統(tǒng)時間和隨機數(shù)的方法,需要的朋友可以參考下
    2014-09-09
  • C語言中位運算符"|"的5種高級用法總結(jié)

    C語言中位運算符"|"的5種高級用法總結(jié)

    這篇文章主要為大家詳細介紹了C語言中位運算符"|"的5種高級用法,文中的示例代碼講解詳細,具有一定的參考價值,需要的可以參考一下
    2023-04-04
  • C++ 先對數(shù)組排序,在進行折半查找

    C++ 先對數(shù)組排序,在進行折半查找

    以下小編就為大家介紹兩種實現(xiàn)方法。第一種方法是,選擇排序法+循環(huán)折半查找法。第二種方法是,冒泡排序法+遞歸折半查找法。需要的朋友可以過來參考下,希望對大家有所幫助
    2013-10-10
  • C++程序函數(shù)的重載和函數(shù)模板示例代碼

    C++程序函數(shù)的重載和函數(shù)模板示例代碼

    C++允許在同一作用域中用同一函數(shù)名定義多個函數(shù),這些函數(shù)的參數(shù)個數(shù)和參數(shù)類型不相同,這些同名的函數(shù)用來實現(xiàn)不同的功能,這就是函數(shù)的重載,這篇文章主要介紹了C++程序函數(shù)的重載和函數(shù)模板,需要的朋友可以參考下
    2024-03-03

最新評論

乐昌市| 吉木萨尔县| 卢氏县| 赤水市| 黄山市| 旬邑县| 洪洞县| 高唐县| 崇义县| 康定县| 晋城| 太原市| 当雄县| 库车县| 乌兰察布市| 雅安市| 五常市| 内丘县| 玉树县| 教育| 子长县| 防城港市| 富平县| 洞口县| 宜宾县| 长丰县| 浦江县| 永仁县| 大姚县| 博白县| 乐昌市| 昌江| 澄江县| 尉氏县| 洛扎县| 绍兴市| 呼图壁县| 灵川县| 公主岭市| 新竹县| 铁岭县|