标签:排序
C++提供了qsort函数对数据进行快读排序,也提供了sort函数对vector和list进行排序,比较函数和函数类型的参数是排序函数的关键。
#include<iostream>
#include<cstdlib>
#include<algorithm>
#include<vector>
#include<list>
#include<iterator>
using namespace std;
int QsCmp(const void *a, const void *b)
{
return *(int *)a-*(int *)b;
}
int SCmp(int a, int b)
{
return a > b;
}
int main()
{
vector<int> m;
list<int> l;
list<int>::iterator it;
int a;
for (int i = 0; i < 8; i++)
{
cin >> a;
m.push_back(a);
l.push_back(a);
}
/*
快速排序函数调用,第一个参数为指针首地址,第二个参数为排序数组大小,第三个参数为类型所占的字节数,最后一个为比较函数
*/
qsort(&m[0],8,sizeof(int),QsCmp);
for (int i = 0; i < 8; i++)
cout << m[i] << endl;
/*
向量排序
*/
sort(m.begin(),m.end(), SCmp);
for (int i = 0; i < 8; i++)
cout << m[i] << endl;
/*
list排序
*/
l.sort(SCmp);
for (it = l.begin(); it!=l.end(); it++)
cout << *it << endl;
system("pause");
return 0;
}
本文出自 “风雪夜之星” 博客,请务必保留此出处http://592669550.blog.51cto.com/5487419/1700019
标签:排序
原文地址:http://592669550.blog.51cto.com/5487419/1700019