是乙個內部自動有序且不含重複元素的容器。要使用set,需要加標頭檔案#include
setname;
其中typename可以是任何基本型別,例如int、double、char、結構體等,也可以是stl標準容器,例如vector、set、queue等
set::iterator it;
注:set只能通過迭代器訪問。且除vector和string之外的stl容器都不支援* (it+i)的訪問方式
#include #include using namespace std;
int main()
return 0;
}輸出結果:
1 3 5
(1). insert(x)可將x出入set容器中,並自動遞增排序和去重
(2). find(value)返回set中對應值為value的迭代器
(3). erase()有兩種用法: 刪除單個元素、刪除乙個區間內的所有元素
· st.erase(it), it為所需要刪除元素的迭代器
· st.erase(value),value為所需要刪除元素的值
· st.erase(first, last),可以刪除乙個區間內的所有元素
(4). size()
(5). clear()set主要作用就是自動去重並按公升序排序,因此碰到需要去重但是卻不方便直接開陣列的情況,可以嘗試用set解決
// 5、set集合
#include
#include
using
namespace std;
intmain()
else
s.erase(1
);//在集合set容器中刪除這個值
if(s.
find(1
)!= s.
end())
else
return0;
}
集合的個數:3集合中有2這個元素
集合中沒有1這個元素
C STL set容器常用用法
set是stl中一種標準關聯容器。它底層使用平衡的搜尋樹 紅黑樹實現,插入刪除操作時僅僅需要指標操作節點即可完成,不涉及到記憶體移動和拷貝,所以效率比較高。set,顧名思義是 集合 的意思,在set中元素都是唯一的,而且預設情況下會對元素自動進行公升序排列,支援集合的交 set intersecti...
C STL set容器常用用法
set是stl中一種標準關聯容器。它底層使用平衡的搜尋樹 紅黑樹實現,插入刪除操作時僅僅需要指標操作節點即可完成,不涉及到記憶體移動和拷貝,所以效率比較高。set,顧名思義是 集合 的意思,在set中元素都是唯一的,而且預設情況下會對元素自動進行公升序排列,支援集合的交 set intersecti...
C STL set容器常用用法
set是stl中一種標準關聯容器。它底層使用平衡的搜尋樹 紅黑樹實現,插入刪除操作時僅僅需要指標操作節點即可完成,不涉及到記憶體移動和拷貝,所以效率比較高。set,顧名思義是 集合 的意思,在set中元素都是唯一的,而且預設情況下會對元素自動進行公升序排列,支援集合的交 set intersecti...