视频和之前一样,bilibili上搜c++stl就行
#include<iostream>
using namespace std;
//#include<pair>
//size
//empty
//insert
//erase
//clear
//find(x) :查找//x是否在set之中出现
//count(x) :统计//x在set之间出现次数
//lower_bound(x) :以迭代器的方式返回第一个key>=x上限
//upper_bound(x) :以迭代器的方式返回第一个key>x 下限
//equal_bound(x) :返回 返回上下限,用pair接着
#include<set>
//set 和 multiset 基本一样,就是set不能重复,multiset可以有重复的键
void prints(set<int>s)
{
set<int>::const_iterator it=s.begin();
while(it!=s.end())
{
cout<<*it<<" ";
it++;
}
cout<<endl;
}
void t1()
{
// set<type ,排序规则且为type>s;
set<int>s;
for(int i=1;i<=5;i++)s.insert(i);
cout<<"s=";prints(s);
set<int>s1;s1=s;
cout<<"s1=";prints(s1);
cout<<"s.empty()="<<s.empty()<<endl;
set<int>::const_iterator it = s.find(2);
cout<<*it<<endl;
// it=s.find(100);
// cout<<*it<<endl;
//看文献说find时间复杂度o(log n),count 时间复杂度(n)
//能用find就用find
cout<<"s.count(5)="<<s.count(5)<<endl<<"s.count(100)="<<s.count(100)<<endl;
cout<<"*s.lower_bound(3)="<<*s.lower_bound(3)<<endl;
cout<<"*s.upper_bound(3)="<<*s.upper_bound(3)<<endl;
pair<set<int>::const_iterator,set<int>::const_iterator>pa;
pa=s.equal_range(3);
if(pa.first != s.end())
cout<<"*(pa.first)="<<*(pa.first)<<endl;
if(pa.second !=s.end())
cout<<"*(pa.second)="<<*(pa.second)<<endl;;
}
void t2()
{
multiset<int>m;
for(int i=1;i<=5;i++)
m.insert(i);
m.insert(1);m.insert(1);m.insert(1);
m.insert(1);m.insert(1);m.insert(1);
multiset<int>::const_iterator it=m.begin();
while(it!=m.end())
{
cout<<*it<<" ";
it++;
}
cout<<endl;
}
int main()
{
// t1();
// t2();
printf("青宝~我爱你!!");
return 0;
}