C++使用STL进行排序

使用STL进行排序,首先要引入两个头文件

#include
#include

STL排序针对的数据结构可以是向量。向量的声明过程是这样的:

vector<int> odd,even;

往向量里插入元素,用下面这种语法:

odd.push_back(1);

要让向量按照从小到大或者从大到小排序,基本上只需要一句话:

 //从大到小排列
 sort(odd.begin(),odd.end(),greater());
 //从小到大排列
 sort(even.begin(),even.end());

这里的greater()是函数模板。可以自己定义。例如为你的自定义类型定义一个比较规则。将该规则用在排序中。
排序完成后,遍历向量,输出排序结果

for_each(odd.begin(),odd.end(),print);
for_each(even.begin(),even.end(),print);
//print函数
void print(int i)
{
   cout<<i<<" ";
}

你可能感兴趣的:(数据结构与算法)