C++中set 和multiset 容器類小總結
C++中有兩個容器類,對於做編程題的同學,遇到集合問題直接調用是十分方便的,下麵我來介紹C++裏麵的兩個容器類
,它們分別是set 和multiset。
一.set 容器
set是一個集合。
需要在c++的編譯環境中使用,需要的頭文件是#include<set>
創建一個名為a的整型set容器的方法是set<int>a(其它類型類似)
常用的方法(可以直接調用):
begin() 返回指向第一個元素的迭代器
clear() 清除所有元素
count() 返回某個值元素的個數
empty() 如果集合為空,返回true(真)
equal_range() 返回集合中與給定值相等的上下限的兩個迭代器
erase() 刪除集合中的元素
find() 返回一個指向被查找到元素的迭代器
get_allocator() 返回集合的分配器
insert() 在集合中插入元素
lower_bound() 返回指向大於(或等於)某值的第一個元素的迭代器
key_comp() 返回一個用於元素間值比較的函數
max_size() 返回集合能容納的元素的最大限值
rbegin() 返回指向集合中最後一個元素的反向迭代器
rend() 返回指向集合中第一個元素的反向迭代器
size() 集合中元素的數目
swap() 交換兩個集合變量
value_comp() 返回一個用於比較元素間的值的函數
二.multiset容器
Multiset的中文名是多重集合,
其實就是集合的擴展版。唯一的不同是集合中一個值隻能出現一次,而多重集合中一個值可以出現多次。
需要在c++的編譯環境中使用,需要的頭文件是#include<set>
創建一個名為a的整型multiset容器的方法是multiset<int>a(其它類型類似)
multiset的方法和set相同,唯一的區別就是multiset可以儲存很多相同的值
三:set與multiset容器的區別?
Set、multiset都是集合類,差別在與set中不允許有重複元素,multiset中允許有重複元素。

四.什麼時候適合用set,什麼時候適合用multiset?
什麼時候適合用multiset?
當然是需要用set,但是又允許重複key存在的時候了。
什麼時候適合用set?
需要隨時往容器中插入元素,隨時對元素進行快速查找,又需要按某種順序對元素進行遍曆的時候
最後更新:2017-04-03 12:55:38