C map函式的用法

2021-10-22 05:09:30 字數 1192 閱讀 8099

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...