C++ STL 的各結構實現

C++ STL 的實現:數組

1.vector  底層數據結構爲數組 ,支持快速隨機訪問數據結構

2.list    底層數據結構爲雙向鏈表,支持快速增刪.net

3.deque   底層數據結構爲一箇中央控制器和多個緩衝區,詳細見STL源碼剖析P146,支持首尾(中間不能)快速增刪,也支持隨機訪問blog

4.stack   底層通常用23實現,封閉頭部便可,不用vector的緣由應該是容量大小有限制,擴容耗時源碼

5.queue   底層通常用23實現,封閉頭部便可,不用vector的緣由應該是容量大小有限制,擴容耗時hash

6.45是適配器,而不叫容器,由於是對容器的再封裝it

7.priority_queue 的底層數據結構通常爲vector爲底層容器,堆heap爲處理規則來管理底層容器實現io

8.set       底層數據結構爲紅黑樹,有序,不重複容器

9.multiset  底層數據結構爲紅黑樹,有序,可重複 map

10.map      底層數據結構爲紅黑樹,有序,不重複

11.multimap 底層數據結構爲紅黑樹,有序,可重複

12.hash_set 底層數據結構爲hash表,無序,不重複

13.hash_multiset 底層數據結構爲hash表,無序,可重複 

14.hash_map      底層數據結構爲hash表,無序,不重複

15.hash_multimap 底層數據結構爲hash表,無序,可重複 
---------------------
做者:kangquan2008
來源:CSDN
原文:https://blog.csdn.net/huangkq1989/article/details/7277282
版權聲明:本文爲博主原創文章,轉載請附上博文連接!

 

from:https://blog.csdn.net/huangkq1989/article/details/7277282

相關文章
相關標籤/搜索