stl中:
MAP的節點是一對數據.
SET的節點是一個數據.
Map使用關鍵值Key來唯一標識每一個成員 map可以重復。
set是集合
都屬于關聯容器
只不過, map的形式 map<type1, type2> mymap;
set的形式 set<type> myset;
set(集合)——包含了經過排序了的數據,這些數據的值(value)必須是唯一的。
map(映射)——經過排序了的二元組的集
合,map中的每個元素都是由兩個值組成,其中的key(鍵值,一個map中的鍵值必須是唯一的)是在排序或搜索時使用,它的值可以在容器中重新獲??;而
另一個值是該元素關聯的數值。比如,除了可以ar[43] = "overripe"這樣找到一個數據,map還可以通過ar["banana"] =
"overripe"這樣的方法找到一個數據。如果你想獲得其中的元素信息,通過輸入元素的全名就可以輕松實現。
map是映射集合中的元素不能重復,set可以進行集合的各種操作(交并補等),當然你也可以用list或vector實現set,但是效率會很低。set一般是用平衡樹或哈西表實現的。
映射是一種一一對應的關系,哈西表也可以看作是映射的一種。映射通常可用來實現字典結構(dictionary)