C++ set容器簡單用法


set是關聯容器,類似於集合,里面的元素不會重復,而且呈現為有序性

常用操作:

using namespace std;

set<int>:s;
1.元素插入:s.insert()
2.中序遍歷:類似vector遍歷(用迭代器)

set<int>::reverse_iterator rit=s.begin();

while(rit!=s.end())

{

  printf("%d",*rit++);

}

3.反向遍歷:利用反向迭代器reverse_iterator。

    set<int>::reverse_iterator rit;
    for(rit=s.rbegin();rit!=s.rend();rit++)
4.元素刪除:與插入一樣,可以高效的刪除,並自動調整使紅黑樹平衡。
            set<int> s;
            s.erase(2);        //刪除鍵值為2的元素
            s.clear();
5.元素檢索:find(),若找到,返回該鍵值迭代器的位置,否則,返回最后一個元素后面一個位置。
            set<int> s;
            set<int>::iterator it;
            it=s.find(5);    //查找鍵值為5的元素
            if(it!=s.end())    //找到
                cout<<*it<<endl;
            else            //未找到
                cout<<"未找到";

C++成員函數:

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()--返回一個用於比較元素間的值的函數


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM