亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

C++標準庫(STL)中的容器

2019-11-08 01:34:24
字體:
來源:轉載
供稿:網友

1. 序列容器 容器里的元素是有位置的,有前有后

1.1. array

靜態連續數組. C++11中新增. 大小是固定的,不能改變. 和C語言中本來支持的數組[]特性類似; 支持隨機存取, 支持容器都支持的迭代器操作,支持判斷數組中元素的數量等操作;

1.2. vector

動態連續數組. 大小可變 使用的內存是連續的. 所以支持隨機存取 在末端的增刪操作性能好,但是中間的插入刪除性能差.

1.3 deque

雙頭隊列; 可在頭部和尾部插入刪除; 使用的內存是不連續的, 但是一段一段的; 隨機存取時間復雜度為o(1); 頭尾插入刪除基本也是o(1); 插入刪除任意元素是o(n);

1.4 forward_list

單向鏈表; c++11中新增; 不支持隨機存取; 列表里增加,刪除,移動一個元素, 不會使得指向其他元素的迭代器失效, 只會使自己失效;

1.5 list

雙向鏈表 插入刪除元素常量時間; 增加, 刪除, 移動元素, 不會使得其他元素的迭代器失效;

2. 關聯容器 關聯容器里的值,都按照某種規則(元素值的大小)進行了排序;

2.1 set

集合 包含的都是關鍵字, 每個都是唯一的; 搜索, 刪除 , 插入的時間復雜度是o(log(n))

2.2 map

映射 包含的元素都是關鍵字-值, 按照關鍵字進行了排序 搜索, 刪除, 插入的時間復雜度是o(log(n)) 常用紅黑樹實現;

2.3 multiset

可重復集合; 可以有等值的元素存在; c++11中新增; 等值的元素, 按照插入順序;

2.4 multimap

可重復映射 包含的元素中, 允許關鍵字相等 c++11中新增; 關鍵字等值的元素, 按照插入順序;

3. 無序關聯容器 容器中的值, 不進行排序; 都是c++11中新增

3.1 unordered_set

無序集合; 等值的元素唯一; 搜索, 插入, 刪除的時間復雜度為常量;

3.2 unordered_map

無序映射; 關鍵字等值的元素唯一; 搜索, 插入, 刪除的時間復雜度為常量;

3.3 unordered_multiset

無序的可重復集合 可以容納等值的元素 元素不排序 搜索,插入,刪除的時間復雜度為常量

3.4 unordered_multimap

無序可重復映射 可以容納關鍵字等值的元素; 不排序; 搜索, 插入, 刪除的時間復雜度為常量;

4. 容器適配器 為序列容器提供了不一樣的接口

4.1 stack

LIFO棧

4.2 queue

FIFO隊列

4.3 PRiority_queue

隊列的第一個元素總是最大的那個

5. 容器的線程安全性

總體來說, 容器的線程安全是不靠譜的, 專家們說, 別靠容器自己來保證線程安全. 對于不同的線程,可以同時用任何函數(不是成員函數哦)訪問不同的容器(似乎有些廢話); 對于不同的線程,可以同時訪問相同容器的只讀成員函數; 不同的線程, 可以同時修改同一容器中的不同元素, 除了vector 也許… 沒啥意義 Elements of the same container can be modified concurrently with those member functions that are not specified to access these elements. More generally, the C++ standard library functions do not read objects indirectly accessible through their arguments (including other elements of a container) except when required by its specification. In any case, container Operations (as well as algorithms, or any other C++ standard library functions) may be parallelized internally as long as this does not change the user-visible results (e.g. std::transform may be parallelized, but not std::for_each which is specified to visit each element of a sequence in order)

6 容器成員函數的分類

6.1 構造類函數

構造函數 析構函數 賦值運算符 assign方法

6.2 迭代器函數

頭 begin 尾 end 常量頭 cbegin 常量尾 cend 逆頭 rbegin 常量逆頭 crbegin 逆尾 rend 常量逆尾 crend

6.3 訪問元素

at [] front() 第一個 back() 最后一個

6.4 容量

判斷空 empty 元素數量 size 容器最大允許的元素數量 max_size 重設元素數量 resize capacity 已經分配的內存 調整內存 reverse 讓容量匹配元素數量 shrink_to_fit

6.5 修改

清空 clear 插入 insert 直接在某位置構造并插入 emplace 直接在某位置構造并插入, 而且別自動排序 emplace_hint 刪除迭代器指定的元素 erase 在最前壓入 push_front 直接構造并在最前壓入 emplace_front 從前面彈出 pop_front 從后面壓入 push_back 直接構造并在最后壓入 emplace_back 從后面彈出 pop_back 交換兩個容器的內容 swap

6.7 列表操作

合并 merge 切割 splice 移除元素 remove 移除符合條件的元素 remove_if 反序 reverse 清除重復元素 unique 按照增序排序 sort

6.8 查找

等值計數 count 查找 find 查找比某個元素大的第一個元素位置 lower_bound 查找比某個元素小的第一個元素的位置 upper_bound 找到等值序列 equal_range

6.9 觀察者

得到鍵比較函數 得到值比較函數 得到哈希函數 得到鍵相等函數

6.10分配器

得到元素的分配器

參考鏈接:http://www.jianshu.com/p/392765038d89


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
2020欧美日韩在线视频| 成人av.网址在线网站| 国产成人精品免高潮在线观看| 亚洲美女久久久| 欧美性猛交xxxx| 国产欧美精品日韩精品| 欧美激情一二区| 久久久久久久999精品视频| 欧美高清视频一区二区| 欧美国产日本在线| 51ⅴ精品国产91久久久久久| 91精品啪在线观看麻豆免费| 中文字幕国产精品久久| 国产亚洲精品美女久久久久| 欧美日本啪啪无遮挡网站| 911国产网站尤物在线观看| 日韩av男人的天堂| 成人欧美一区二区三区在线湿哒哒| 欧美老肥婆性猛交视频| 久久久999精品视频| 青草成人免费视频| 久久亚洲电影天堂| 欧美日韩亚洲精品内裤| 欧美日韩亚洲一区二区三区| 热99久久精品| xvideos国产精品| 日韩欧美国产视频| 成人信息集中地欧美| 中文字幕在线看视频国产欧美| 亚洲美女av黄| 欧美色videos| 亚洲成年网站在线观看| 一区二区三区亚洲| 日韩精品高清在线| 日韩精品在线免费观看视频| 日韩av在线一区二区| 欧美中文字幕精品| 国产精品久久久久影院日本| 一区二区三区视频免费| 亚洲精品视频在线观看视频| 久久精品一本久久99精品| xxx一区二区| 亚洲欧美国产一本综合首页| 国产精品三级久久久久久电影| 91成人国产在线观看| 欧美成人国产va精品日本一级| 久久影院中文字幕| 欧美成人免费大片| 大胆人体色综合| 91天堂在线视频| 亚洲欧洲自拍偷拍| 精品视频在线播放| 日韩av电影手机在线| 自拍亚洲一区欧美另类| 久久久久久这里只有精品| 欧美二区在线播放| 亚洲午夜女主播在线直播| 亚洲理论在线a中文字幕| 精品亚洲一区二区三区在线播放| 日本韩国在线不卡| 国产精品久久久久久久久久久久久久| 欧美激情久久久久| 精品视频一区在线视频| 久久久精品影院| 欧美另类高清videos| 欧美在线视频免费观看| 九九精品视频在线| 成人网址在线观看| 日韩高清电影免费观看完整版| 福利视频第一区| 日韩电影中文字幕| 日韩电影在线观看永久视频免费网站| 亚洲毛片在线观看.| 国产成人综合一区二区三区| 精品福利免费观看| 成人免费看吃奶视频网站| 久久久久日韩精品久久久男男| 亚洲欧美中文字幕在线一区| 亚洲午夜久久久影院| 欧美日韩另类在线| 亚洲一区中文字幕在线观看| 福利视频导航一区| 精品成人国产在线观看男人呻吟| 日本高清不卡的在线| 欧美日韩人人澡狠狠躁视频| 91国产美女视频| 久久亚洲国产精品| 久久中文字幕在线| 久久成人亚洲精品| 91中文在线观看| 欧美猛交免费看| 在线成人免费网站| 国内精品视频一区| 欧美福利在线观看| 亚洲视频在线视频| 国产精品久久久久久av福利软件| 日韩欧美在线看| 欧美在线观看视频| 成人综合国产精品| 久久琪琪电影院| 中文字幕欧美在线| 日韩精品免费一线在线观看| 欧美激情视频一区二区| 91手机视频在线观看| 亚洲成人中文字幕| 国产成人拍精品视频午夜网站| 国产精品jvid在线观看蜜臀| 中文字幕亚洲激情| 2018中文字幕一区二区三区| 最新69国产成人精品视频免费| 精品国产电影一区| 亚洲激情成人网| 国产精品久久久久久久久免费看| 黄色一区二区在线| 国产91精品久久久久久久| 九九久久国产精品| 日韩中文视频免费在线观看| 亚洲国产高清福利视频| 欧美国产第一页| 亚洲色图18p| 日韩精品极品毛片系列视频| 日韩在线观看视频免费| 欧美高清在线观看| 成人午夜激情免费视频| 国产91精品网站| 爽爽爽爽爽爽爽成人免费观看| 日韩av日韩在线观看| 亚洲女人天堂视频| 日韩精品在线观看网站| 一区二区三区精品99久久| 在线免费看av不卡| 亚洲人成伊人成综合网久久久| 日韩电影中文字幕一区| 久久亚洲国产精品成人av秋霞| 久久视频在线视频| 国产精品99久久久久久www| 色系列之999| 国产精品免费看久久久香蕉| 精品美女久久久久久免费| 色综合91久久精品中文字幕| 国产成人精品a视频一区www| 久久国产精品久久久| 成人黄色av免费在线观看| 久久久久久九九九| 欧美性极品xxxx做受| 丝袜情趣国产精品| 国产精品扒开腿做爽爽爽的视频| 久久久久久久一区二区| 欧美国产视频一区二区| 在线观看视频99| 成人黄色免费看| 国产精品一区二区在线| 日韩精品亚洲精品| 精品久久中文字幕久久av| 久久久久久久久久久国产| 亚洲国内精品视频| 国产精品女主播| 精品偷拍一区二区三区在线看| 欧美性生交xxxxx久久久| 成人中文字幕+乱码+中文字幕| 中文日韩在线观看| 欧美日韩免费区域视频在线观看| 久久精品久久久久电影| 51久久精品夜色国产麻豆|