赞
踩
目录
我们都知道,set是STL里的一种数据结构,这篇博客就是set用法的详解。
set初始化一般是
set<数据结构名称> 名字;
创建一个int型,名称是s的set。
set<int> s;
set还可以创建STL里的数据结构(包括自己)
- set<pair<int,int>> s;
-
- set<set<int>> s;
再创建时,可以对set进行初始化。
set<int> s={1,3,6,4};
这样就给s的初始化成{1,3,6,4}
set特性有两点:
set不能用下标访问,只能用迭代器访问。
例如创造set<int> 的迭代器:
set<int>::iterator it;
这样就成功的创建了set<int> 的迭代器,名子是it。
遍历set<int> s;的所有元素:
- for(it=s.begin();it!=s.end();it++)
- {
-
- }
用*it来访问当前的元素。
示例:
- #include<bits/stdc++.h>
- using namespace std;
- int main()
- {
- set<int> s={1,2,3,4};
- set<int>::iterator it;
- for(it=s.begin();it!=s.end();it++)
- {
- cout<<*it<<' ';
- }
- return 0;
- }
结果如下:
如果你很懒,那么还有一种方式很适合你:
- #include<bits/stdc++.h>
- using namespace std;
- int main()
- {
- set<int> s={1,2,3,4};
- for(auto it:s)
- {
- cout<<it;
- }
- return 0;
- }
注意:这里是用it,不是*it。
结果如下 :
当题目卡常时:不建议用auto,用迭代器。
这里会讲:insert(),clear(),find(),erase(),count(),size(),empty(),lower_bound(),upper_bound()。
先来
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。