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;
}
碼字不易 有幫助記得點贊
有疑問歡迎評論區留言!!
相關文章
- 【TcaplusDB知識庫】PB表C++示例程式碼-刪除資料C++
- c++ vector容器——檢測更改容量和大小 示例C++
- C++ 順序容器的刪除操作C++
- 《Effective C++》閱讀總結(二):類的構造、析構和賦值C++賦值
- C++ forward_list 中插入和刪除操作C++Forward
- C++之Big Three:拷貝構造、拷貝賦值、解構函式探究C++賦值函式
- C++之this指標、拷貝構造、賦值構造、單列模式(餓漢模式、懶漢模式)C++指標賦值模式
- c/c++ 標準順序容器 容器的訪問,刪除 操作C++
- c/c++ 標準庫 map set 插入C++
- Python 在Excel中插入、替換、提取、或刪除圖片PythonExcel
- 直播系統搭建,插入圖片、刪除圖片、設定圖片大小
- 合併、刪除區間演算法C++程式碼演算法C++
- 《Effective C++》第三版-2. 構造析構賦值運算(Constructors,Destructors,and Assignment Operators)C++賦值Struct
- 物件賦值轉換物件賦值
- C++ 順序容器大小操作 resizeC++
- 構造程式碼塊
- 解構賦值賦值
- 批量刪除容器和映象
- C\C++之用結構體實現連結串列的建立、遍歷、結點插入、結點刪除C++結構體
- redhat6.9增加swap交換空間大小Redhat
- SQL基礎——DML(插入、修改和刪除)SQL
- docker 批量刪除容器和映象Docker
- JS解構賦值JS賦值
- 好的程式碼很容易刪除!
- 刪除oracle重複值Oracle
- 遞迴顯示字型交換程式碼片段遞迴
- C++ vector容器的swap方法(容器互換)C++
- 數值變數交換常用方法變數
- 變更性別--使用if 交換值
- 資料結構:單迴圈連結串列的建立插入與刪除資料結構
- 切換功能增加刪除
- AVL樹(查詢、插入、刪除)——C語言C語言
- Unfolder使用教程:如何插入,刪除和更新物件物件
- 【typeorm】typeorm官方文件querybuilder插入更新刪除部分ORMUI
- 徹底刪除mysql容器內容MySql
- docker刪除所有容器和映象命令Docker
- mysql 跨表查詢、更新、刪除示例MySql
- JavaScript 物件解構賦值JavaScript物件賦值