蓝桥杯省赛无忧 STL 课件16 set

01 set集合

蓝桥杯省赛无忧 STL 课件16 set_第1张图片
蓝桥杯省赛无忧 STL 课件16 set_第2张图片
修改set比较方法的常见手段,后面的multiset类似

#include
using namespace std;
int main()
{
  set<int,greater<int>> myset;
  
  myset.insert(25);
  myset.insert(17);
  myset.insert(39);
  myset.insert(42);
  
  for(const auto& elem : myset){
  	cout<<elem<<" ";
  }
  cout<<endl;
  return 0;
}

在这里插入图片描述

#include
using namespace std;
struct MyCompare{
	bool operator()(const int& a,const int& b) const{
		//自定义比较逻辑
		return a>b ;//改为逆序 
	}
};
int main(){
	set<int,MyCompare> mySet;
	
	mySet.insert(25);
	mySet.insert(17);
	mySet.insert(39);
	mySet.insert(42);
	
	for(const auto& elem : mySet) {
		cout<<elem<<" ";
	}
	cout<<endl;
	return 0;
}

在这里插入图片描述

02 multiset多重集合

蓝桥杯省赛无忧 STL 课件16 set_第3张图片

蓝桥杯省赛无忧 STL 课件16 set_第4张图片

03 unordered_set无序集合

蓝桥杯省赛无忧 STL 课件16 set_第5张图片
蓝桥杯省赛无忧 STL 课件16 set_第6张图片

04 代码示例

蓝桥杯省赛无忧 STL 课件16 set_第7张图片
蓝桥杯省赛无忧 STL 课件16 set_第8张图片
蓝桥杯省赛无忧 STL 课件16 set_第9张图片

你可能感兴趣的:(蓝桥杯省赛无忧,蓝桥杯,c++,c语言,算法,set)