c++ set容器 —構造 賦值 大小 交換 插入 刪除 程式碼示例
關注小韓 輕鬆程式設計 一起由淺入深
解析都在程式碼註釋裡 廢話不多說 上菜!!!
#include<iostream>
#include<set>
using namespace std;
/*
1. set簡介:所有元素都會在插入時自動排序 底層結構是二叉樹
2. set和multiset區別:
set不允許容器中有重複元素
multiset允許容器中有重複的元素
3. 構造:
set<T> 預設構造
set<T> s2(s1); 拷貝構造
4. 過載了等號運算子 可直接等號賦值 s2=s1;
5. 插入資料只有insert方式 (因為是樹結構) 沒有push
6.set的大小和交換:
size() //返回容器中元素的個數
empty() //判斷容器是否為空
s1.swap(s2) //交換兩個容器的值
7. set插入和刪除
insert(elem) //容器中插入元素
clear() //清除所有元素
erase(pos) //刪除pos迭代器所指的元素。返回下一個元素的迭代器
erase(beg,end) //刪除區間內的所有元素 返回一個元素的位置
erase(elem) //刪除容器中值elem的元素
*/
void printset(set<int> s)
{
for (set<int>::iterator it = s.begin(); it != s.end(); it++)
cout << *it << " ";
cout << endl;
}
void test()
{
set<int> st;
st.insert(50);
st.insert(30);
st.insert(20);
st.insert(10);
st.insert(40);
printset(st); //列印輸出容器內的值
//刪除首元素
st.erase(st.begin()); // 引數是迭代器
printset(st); //刪除的是;排好序的首元素10
//刪除過載版本
st.erase(30);
printset(st); //刪除30
//清空
st.erase(st.begin(), st.end());
printset(st);
st.clear();
}
int main()
{
test();
return 0;
}
碼字不易 有幫助記得點贊
有疑問歡迎評論區留言!!
相關文章
- C++物件模型之五 構造 析構 賦值筆記 (轉)C++物件模型賦值筆記
- c++ vector容器——檢測更改容量和大小 示例C++
- 《Effective C++》閱讀總結(二):類的構造、析構和賦值C++賦值
- STL程式設計實踐三:剖析STL容器的複製構造和賦值特性 (轉)程式設計賦值
- ES6 => new Set || map||...解構賦值賦值
- 【TcaplusDB知識庫】PB表C++示例程式碼-刪除資料C++
- 區分copy構造與copy賦值賦值
- C++之this指標、拷貝構造、賦值構造、單列模式(餓漢模式、懶漢模式)C++指標賦值模式
- C++ 順序容器的刪除操作C++
- C++之Big Three:拷貝構造、拷貝賦值、解構函式探究C++賦值函式
- 《Effective C++》第2章 構造/析構/賦值運算(2)-讀書筆記C++賦值筆記
- 《Effective C++》第2章 構造/析構/賦值運算(1)-讀書筆記C++賦值筆記
- C++ forward_list 中插入和刪除操作C++Forward
- 【c++】深賦值與淺賦值C++賦值
- javascript刪除陣列指定值程式碼例項JavaScript陣列
- 陣列 重複不新增 、相同刪除,相同賦值陣列賦值
- c/c++ 標準順序容器 容器的訪問,刪除 操作C++
- 單連結串列的插入刪除操作(c++實現)C++
- javascript按照值刪除陣列元素程式碼例項JavaScript陣列
- c/c++ 標準庫 map set 插入C++
- 靜態程式碼塊、構造程式碼塊、構造方法構造方法
- 直播系統搭建,插入圖片、刪除圖片、設定圖片大小
- 解構賦值賦值
- 合併、刪除區間演算法C++程式碼演算法C++
- 《Effective C++》第三版-2. 構造析構賦值運算(Constructors,Destructors,and Assignment Operators)C++賦值Struct
- 《EffectiveC++》讀書筆記之二構造/析構/賦值運算C++筆記賦值
- 構造程式碼塊
- hibernateHQl批量插入、刪除、更新
- SQL Cookbook—插入、更新與刪除SQL
- C++ 順序容器大小操作 resizeC++
- 批量刪除容器和映象
- JS解構賦值JS賦值
- 禁止密碼框賦值黏貼程式碼密碼賦值
- 點選刪除彈出提示是否刪除程式碼
- c++ map和mutimaps 插入值C++
- MongoDB 集合的插入、更新、刪除操作MongoDB
- C++複製控制:賦值操作符和解構函式C++賦值函式
- C++ 引用 (交換兩個數的值)C++