stl中的map函式是將(key,value)資料以紅黑樹儲存的容器
其中關鍵字 key 只出現一次
map的定義
map mp;//定義了乙個名為m的空的map物件
map mp(m2);//建立了m2的副本mp
map的插入
map可以自動建立key - value的對應。key 和 value可以是任意你需要的型別,包括自定義型別。
map中資料是以pair儲存的。因此插入以建立pair進行
for
(int i = 0; i < 10; i ++)
for(int i = 10; i < 20; i++)
map的查詢
find(k)通過查詢key並返回相應的迭代器;
map函式會自動排序因此它的時間複雜度為logn。可以通過改變標頭檔案來改善,即#include (map的不排序版本);
改變標頭檔案是命名也要改變(unordered_mapmp);
count(k)返回關鍵字key的數量若找到返回1否則返回0;
#include
#include
using namespace std;
int main(
) map::iterator it;
it = mp.find(0)
; printf(
"%d->%d\n", it->first, it->second)
; int n=mp.count(0)
; printf(
"%d\n",n)
;return 0;
}
map的刪除
mp.erase(k)其中k可以是key也可是迭代器
其他的一些操作
clear() 刪除所有元素
count() 返回指定元素出現的次數
empty() 如果map為空則返回true
key_comp() 返回比較元素key的函式
max_size() 返回可以容納的最大元素個數
size() 返回map中元素的個數
swap() 交換兩個map
C map函式的用法
對map函式的一些整理 c map的基本操作和使用 map是c 的乙個標準容器,她提供了很好一對一的關係,在一些程式中建立乙個map可以起到事半功倍的效果,總結了一些map基本簡單實用的操作!1 map簡介 map是一類關聯式容器。它的特點是增加和刪除節點對迭代器的影響很小,除了那個操作節點,對其他...
CMap類的用法
定義 cmapmymap 16 賦值 for int i 0 i 10 i mymap.setat i,cpoint i,i 賦完值後就變成如下這樣 索引 值 0 0,0 1 1,1 2 2,2 3 3,3 4 4,4 5 5,5 6 6,6 7 7,7 8 8,8 9 9,9 關鍵字為int型 比...
C MAP 基本用法
map內部資料的組織,map內部自建一顆紅黑樹 一種非嚴格意義上的平衡二叉樹 這顆樹具有對資料自動排序的功能,所以在map內部所有的資料都是有序的。include include using namespace std typedef mapmapstudent typedef map iterat...