用STL对一组数组进行排序和去重
Posted 村雨sup
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用STL对一组数组进行排序和去重相关的知识,希望对你有一定的参考价值。
#include <iostream> #include<cmath> #include "algorithm" #include "cstdio" #include "stack" using namespace std; bool cmp(const int a, const int b) { return a<b; } int main() { int n; cin >> n; int a[n]; for(int i=0;i<n;i++) { cin >> a[i]; } sort(a,a+n); int m = unique(a,a+n)-a;//地址的差值正好为数组中数据的个数 cout << m <<endl; for(int i=0;i<m;i++) { cout << a[i] << " "; } cout << endl; return 0; }
第一:sort不加函数就是按从小到大的顺序进行快排。
第二:unique一般都是用于sort后的去重,实际上是把重复的元素丢到了最后面,返回的是没有重复元素数组的最后一个元素的地址。
以上是关于用STL对一组数组进行排序和去重的主要内容,如果未能解决你的问题,请参考以下文章