17.Set的常见用法详解优化-[STL模板]

17.Set的常见用法详解优化-[STL模板]

1.set的定义—一个无重复有序的容器


一个元素

set<typename> name;
/* 例如
set<int> a;
set<char> b;
*/

一个数组

set<int> a[100];

2.set元素的访问

只能迭代器访问

set<int>::iterator it;  //迭代器的定义  

通过:*it访问元素


迭代器访问实例

#include <bits/stdc++.h>
using namespace std;
int main()
{
	set<int> a;
	a.insert(5);    //插入
	a.insert(3);
	a.insert(1);
	a.insert(3);
	set<int>::iterator it=a.begin();  ////令it指向容器a的首地址
	for(it ;it!=a.end();it++)
	cout<<*it;
	return 0;
}

输入:5 3 1 3
输出:1 3 5
自动去重且排序


3.set常用函数

(1)insert(x)
将元素x插入到容器

(2)find(x)
寻找值为x的迭代器

(3)erase()

erase(it) 删除it元素的迭代器
可以使用a.erase(a.find(x)) 利用find()找到x 再用erase删除

erase(x)删除容器中的所有x [ 常用 ]

erase(first,last) 删除[ first,last)间的元素 左闭右开

(4)size()
获取set的元素总数

(5)clear()
清空set的所有元素

发布了26 篇原创文章 · 获赞 26 · 访问量 3583

猜你喜欢

转载自blog.csdn.net/xg987599519/article/details/104069702