码迷,mamicode.com
首页 > 编程语言 > 详细

用STL对一组数组进行排序和去重

时间:2017-10-24 01:43:56      阅读:295      评论:0      收藏:0      [点我收藏+]

标签:color   return   class   bool   ios   logs   space   数据   数组   

#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对一组数组进行排序和去重

标签:color   return   class   bool   ios   logs   space   数据   数组   

原文地址:http://www.cnblogs.com/cunyusup/p/7719965.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!