集與多集(set/multiset)
v與基本容器相比,
關聯容器更注重快速和高效地檢索資料的能力。
這些容器是根據鍵值
(key
)來檢索資料的,
鍵可以是值也可以是容器中的某一成員。
這一類中的成員在初始化後都是按一定順序排好序的。
vset
和multiset
容器類(
集和多集
):#include
n內部實現
:紅黑樹
u插入刪除查詢複雜度
log(n)
u它其中所包含的元素的值是唯一的
(map)
n允許重複元素
set容器詳解:
v
標頭檔案#include v
定義變數
setmyset; v
主要成員函式 n
myset.insert(elem)
向集合中插入資料
,如果已經存在則不插入 n
myset.erase(elem)
刪除集合中值等於
elem
的元素
n myset.find(elem)
查詢值等於
elem
的元素,
若找到返回指向
elem
的迭代器,否則返回
end(),
n myset.clear()
清除集合中所有資料 n
myset.size()
返回集合中資料個數
multiset容器詳解:
v
標頭檔案#include v
定義變數
multisetmymulset; v
主要成員函式 n
mymulset.insert(elem)
向多重集合中插入資料,
n mymulset.erase(elem)
刪除多重集合中值等於
elem的所有
元素,若刪除成功返回刪除個數,否則返回0
n mymulset.count(elem)
返回多重集合中資料
elem
出現的次數
multiset例項:
#include
#include
#include
using namespace std;
int main()
else
if(set1.find(300)!=set1.end())
else
int a=;
multiset a;
a.insert(a,a+10);
for(multiset::iterator q=a.begin();q!=a.end();q++)
cout<<*q<<" ";
cout<
return 0; }
STL 集和多集(set multiset)
與基本容器相比,關聯容器更注重快速和高效地檢索資料的能力。這些容器是根據鍵值 key 來檢索資料的,鍵可以是值也可以是容器中的某一成員。這一類中的成員在初始化後都是按一定順序排好序的。set和multiset 容器類 集和多集 include 內部它實現 紅黑樹 插入刪除查詢複雜度log n 其中所...
STL 集和多集(set multiset)
與基本容器相比,關聯容器更注重快速和高效地檢索資料的能力。這些容器是根據鍵值 key 來檢索資料的,鍵可以是值也可以是容器中的某一成員。這一類中的成員在初始化後都是按一定順序排好序的。set和multiset 容器類 集和多集 include 內部它實現 紅黑樹 插入刪除查詢複雜度log n 其中所...
STL 集和多集(set multiset)
與基本容器相比,關聯容器更注重快速和高效地檢索資料的能力。這些容器是根據鍵值 key 來檢索資料的,鍵可以是值也可以是容器中的某一成員。這一類中的成員在初始化後都是按一定順序排好序的。set和multiset 容器類 集和多集 include 內部它實現 紅黑樹 插入刪除查詢複雜度log n 其中所...