当前位置: 首页> 房产> 建材 > C++ STL ③

C++ STL ③

时间:2025/7/9 7:41:54来源:https://blog.csdn.net/2301_79479634/article/details/139868639 浏览次数:0次

sort排序

#include <iostream>
#include <algorithm>
using namespace std;int main() {int a[5],i;cout<<"请输入数组元素:"<<endl;for(i=0;i<5;i++){cin>>a[i];}sort(a,a+5,greater<int>());for(i=0;i<5;i++){cout<<a[i]<<" ";}cout<<endl;return 0;
}

vector容器

#include <iostream>
#include<vector>
#include <algorithm>
using namespace std;int main() {vector<int> a;//定义vector容器 //从容器尾部插入元素  a.push_back(98);a.push_back(34);a.push_back(56);a.push_back(78);a.push_back(23);for(int i=0;i<a.size();i++){//调用vector的函数size() 计算a有几个元素 cout<<a[i]<<" ";		} cout<<endl;a.insert(a.begin()+3-1,58);//插入值58到第3个位置 a.pop_back();//删除最后一个元素 for(int i=0;i<a.size();i++){//调用vector的函数size() 计算a有几个元素 cout<<a[i]<<" ";		} cout<<endl;reverse(a.begin(),a.end());for(int i=0;i<a.size();i++){//调用vector的函数size() 计算a有几个元素 cout<<a[i]<<" ";		} cout<<endl; return 0;
}

运行结果为:在这里插入图片描述
list容器

#include <iostream>
#include<list>
#include <algorithm>
using namespace std;
//自定义模板函数  
template<typename T>
void print(list<T> mylist){typename list<T>::iterator it;//创建list的iterator迭代器 for(it=mylist.begin();it!=mylist.end();it++){cout<<*it<<" ";} cout<<endl;
}
int main() {list<int> lt;//创建空的list容器it //list是双向的 lt.push_front(34);lt.push_front(56);lt.push_front(78);lt.push_back(23);lt.push_back(98);lt.push_back(99); print(lt);//调用自定义的模板函数  lt.sort(greater<int>());//将list容器里的数据进行降序排列 cout<<"max="<<*lt.begin()<<endl;//list第一个元素就是最大值  lt.sort();//再将list容器里的数据进行升序排列 lt.remove(98);//删除元素98 print(lt);return 0;
}

运行结果:
在这里插入图片描述
set容器

#include <iostream>
#include<set>
#include<functional>
using namespace std;int main() {set<int> s;//创建一个空的set容器,默认为升序排列  //向元素中插入元素  s.insert(23);s.insert(56);s.insert(18);s.insert(23);s.insert(79);s.insert(56);set<int>::iterator its;//创建容器s的迭代器,用于获取元素 for(its=s.begin();its!=s.end();its++){cout<<*its<<" ";} cout<<endl;//调用find函数 cout<<"是否存在56:"<<(s.find(56)!=s.end()?1:0)<<endl;cout<<"是否存在99:"<<(s.find(99)!=s.end()?1:0)<<endl; //调用erase函数 删除元素  s.erase(s.begin());//调用insert函数  插入元素 s.insert(88);for(its=s.begin();its!=s.end();its++){cout<<*its<<" ";} cout<<endl;return 0;
}

运行结果:
在这里插入图片描述
map容器

#include <iostream>
#include<map>
#include<functional>
#include<string>
using namespace std;
void printm(map<int,char> mymap){pair<int,char> p;//创建pair对象p,其实就是键值对 map<int,char>::iterator it;//定义map的iterator迭代器it for(it=mymap.begin();it!=mymap.end();it++){p=(pair<int,char>)*it;//将迭代器指向的一对元素存放到p中 cout<<p.first<<"->"<<p.second<<endl; } 
}
int main() {map<int,char> m;//创建map对象m m[10]='A';m[11]='B';m[12]='C';m[13]='D';m[14]='E';m[15]='F';printm(m);return 0;
}

运行结果:
在这里插入图片描述

关键字:C++ STL ③

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: