C++ STL 有关于SET集合部分 的自定义数据类型的排序 以及 pair的使用

本文详细介绍了C++ STL中SET集合的使用,包括自定义数据类型的排序和pair的运用。通过示例展示了如何进行SET的初始化、删除操作,以及如何根据less<>和greater<>进行从小到大和从大到小的排序。同时,文章讲解了如何为自定义类型定义仿函数进行排序,并利用insert()返回的pair判断插入操作是否成功。
摘要由CSDN通过智能技术生成
#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)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值