set容器中一些函式,取自百度其他大佬已總結好的,如有侵權,請聯系洗掉!
set的各成員函式串列如下:
c++ stl容器set成員函式:begin()--回傳指向第一個元素的迭代器
c++ stl容器set成員函式:clear()--清除所有元素
c++ stl容器set成員函式:count()--回傳某個值元素的個數
c++ stl容器set成員函式:empty()--如果集合為空,回傳true
c++ stl容器set成員函式:end()--回傳指向最后一個元素的迭代器
c++ stl容器set成員函式:equal_range()--回傳集合中與給定值相等的上下限的兩個迭代器
c++ stl容器set成員函式:erase()--洗掉集合中的元素
c++ stl容器set成員函式:find()--回傳一個指向被查找到元素的迭代器
c++ stl容器set成員函式:get_allocator()--回傳集合的分配器
c++ stl容器set成員函式:insert()--在集合中插入元素
c++ stl容器set成員函式:lower_bound()--回傳指向大于(或等于)某值的第一個元素的迭代器
c++ stl容器set成員函式:key_comp()--回傳一個用于元素間值比較的函式
c++ stl容器set成員函式:max_size()--回傳集合能容納的元素的最大限值
c++ stl容器set成員函式:rbegin()--回傳指向集合中最后一個元素的反向迭代器
c++ stl容器set成員函式:rend()--回傳指向集合中第一個元素的反向迭代器
c++ stl容器set成員函式:size()--集合中元素的數目
c++ stl容器set成員函式:swap()--交換兩個集合變數
c++ stl容器set成員函式:upper_bound()--回傳大于某個值元素的迭代器
c++ stl容器set成員函式:value_comp()--回傳一個用于比較元素間的值的函式
1 #include<iostream> 2 #include<set> 3 using namespace std; 4 5 int main() 6 { 7 set<int>s;//定義整形set容器變數s 8 //插入操作 9 s.insert(1);//insert插入函式 10 s.insert(3); 11 s.insert(5); 12 set<int>::iterator ite;//宣告set容器指標變數ite 13 //查找操作 14 ite = s.find(1);//find查找函式 15 if(ite == s.end())//對指標變數進行判斷,看指標是否指向容器最后一個元素 16 cout << "no found" << endl; 17 else 18 cout << "found" << endl; 19 20 ite = s.find(2); 21 if(ite == s.end()) 22 cout << "no found" << endl; 23 else 24 cout << "found" << endl; 25 //洗掉操作 26 s.erase(3);//容器set洗掉指定元素操作,erase洗掉函式 27 //對洗掉后的元素進行依次查找操作 28 if(s.count(3) != 0) 29 cout << "found" << endl; 30 else 31 cout << "no found" << endl; 32 //遍歷容器操作 33 for(ite = s.begin();ite != s.end();ite++)//begin函式指向容器第一個元素,進行一個for回圈 34 cout << *ite << "P" << endl;//遍歷輸出 35 return 0; 36 }
運行結果:
以下為map容器的簡單應用
begin() 回傳指向 map 頭部的迭代器
clear() 洗掉所有元素
count() 回傳指定元素出現的次數
empty() 如果 map 為空則回傳 true
end() 回傳指向 map 末尾的迭代器
erase() 洗掉一個元素
find() 查找一個元素
insert() 插入元素
key_comp() 回傳比較元素 key 的函式
lower_bound() 回傳鍵值>=給定元素的第一個位置
max_size() 回傳可以容納的最大元素個數
rbegin() 回傳一個指向 map 尾部的逆向迭代器
rend() 回傳一個指向 map 頭部的逆向迭代器
size() 回傳 map 中元素的個數
swap() 交換兩個 map
upper_bound() 回傳鍵值>給定元素的第一個位置
value_comp() 回傳比較元素 value 的函式
以下map容器的簡單應用有使用到make_pair函式,即需要回傳兩個值時的函式,具體請上網取了解,這里不給予過多的贅述,
#include<iostream> #include<map> using namespace std; int main() { //宣告(int為鍵,const char*為值) map<int,const char*>m; //插入元素,使用insert函式 m.insert(make_pair(1,"ONE")); m.insert(make_pair(10,"TEN")); m[100] = "HUNDRED"; //查找元素 map<int,const char*>::iterator ite; ite = m.find(1); cout << ite->second << endl; ite = m.find(2); if(ite == m.end()) cout << "no found" << endl; else cout << ite->second << endl; cout << m[10] << endl; //洗掉元素 m.erase(10); //遍歷一遍所有元素并輸出 for(ite = m.begin();ite != m.end();ite++) cout << ite->first << ":" << ite->second << endl; return 0; }
運行結果:
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/89835.html
標籤:C++
上一篇:POJ2431 優先佇列+貪心 - biaobiao88
下一篇:C++貪心演算法實作活動安排問題
