STL之map基礎知識

2022-04-27 18:15:30 字數 520 閱讀 1297

下面舉例說明什麼是一對一的資料對映。比如乙個班級中,每個學生的學號跟他的姓名就存在著一一對映的關係,這個模型用map可能輕易描述,很明顯學號用int描述,姓名用字串描述(本篇文章中不用char *來描述字串,而是採用stl中string來描述),下面給出map描述**:

mapmap共提供了6個建構函式,這塊涉及到記憶體分配器這些東西,略過不表,在下面我們將接觸到一些map的構造方法,這裡要說下的就是,我們通常用如下方法構造乙個map:

map在構造map容器後,我們就可以往裡面插入資料了。這裡講三種插入資料的方法:

第一種:用insert函式插入pair資料

#include 

#include

#include

using namespace

std;

int main()

這裡有swap,key_comp,value_comp,get_allocator等函式,感覺到這些函式在程式設計用的不是很多,略過不表,有興趣的話可以自個研究

STL之map基礎知識

下面舉例說明什麼是一對一的資料對映。比如乙個班級中,每個學生的學號跟他的姓名就存在著一一對映的關係,這個模型用map可能輕易描述,很明顯學號用int描述,姓名用字串描述 本篇文章中不用char 來描述字串,而是採用stl中string來描述 下面給出map描述 mapmap共提供了6個建構函式,這塊...

map的基礎知識

hashmap 1 hashmap是乙個雜湊表 hashtable 用來存放鍵值對 key value 順序是無序的 2 hashmap不是線性安全,並且是非同步的。3 hashmap的key和value值可以為空,但是key是只能乙個為空,value值可以多個為空。4 hashmap的遍歷 1 m...

4 Map基礎知識儲備

之前list中的陣列和鍊錶,查詢某個元素都存在乙個問題,需要遍歷所有元素,直到找到元素為止,效率比較低。而雜湊表則是不在意儲存順序,只希望快速找到元素。每個物件計算雜湊碼,根據雜湊碼儲存在對應的位置上。出現雜湊衝突的時候就往鍊錶上新增,元素衝突的多的話轉為紅黑樹。如果雜湊表太滿,需要再雜湊,建立乙個...