#include<iostream>
using namespace std;
#include"set" //set集合容器的头文件
#include<functional> //用于识别set从大到小中greater的识别
/*知识点集合*/
//1 set为容器 元素唯一(如果插入多个重复元素就会出现只有一个元素被插入) 自动排序(默认情况下 从小到大) 不可以按照[](数组形式)方式插入元素
//理论基础是 红黑树 平衡二叉树
// 在less<> 与 greater<> 为库中提前预定好的函数对象
//在学习的时候 一定要注意如果出现对某个函数有疑问 一定要学会对该函数的源码追踪
//set 的基本操作 初始化以及删除操作
void main91()
{
set<int> s1;
cout << "set的长度" << s1.size() << endl;
//首先插入五个随机数
for (int i = 0; i < 5; i++)
{
int temp = rand(); //随机数
s1.insert(temp); //set的插入
}
cout << "set的长度" << s1.size() << endl;
set<int>::iterator it = s1.begin();
cout << "set的初始化" << endl;
while (it != s1.end())
{
cout << *it << " ";
it++;
}
cout << endl;
//在插入三个相同的数 验证是否会保证元素的唯一性
s1.insert(10);
s1.insert(10)
C++ STL 有关于SET集合部分 的自定义数据类型的排序 以及 pair的使用
最新推荐文章于 2024-03-29 11:29:48 发布
本文详细介绍了C++ STL中SET集合的使用,包括自定义数据类型的排序和pair的运用。通过示例展示了如何进行SET的初始化、删除操作,以及如何根据less<>和greater<>进行从小到大和从大到小的排序。同时,文章讲解了如何为自定义类型定义仿函数进行排序,并利用insert()返回的pair判断插入操作是否成功。
摘要由CSDN通过智能技术生成