这个功能涉及到一个数据结构(vector)和三个函数:
1:sort,将这组数字从小到大排列;
2:unique,将相邻且重复的数放到vector的尾部,然后返回指向第一个重复元素的迭代器(需要注意的是,被放在尾部的数据有时会产生变化,所以不能继续使用了,需要废弃掉);
3:erase,擦除重复的数据。
示例代码如下:
#include "stdafx.h"
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main()
{
vector<int> v;
cout << "please input the number of vector's element" << endl;
int number;
cin >> number;
for (int i = 0; i < number; i++)
{
int temp;
cin >> temp;
v.push_back(temp); //在vector尾部加入一个数据
}
sort(v.begin(),v.end());
v.erase(unique(v.begin(), v.end()), v.end());
for (int i = 0; i < v.size(); i++)
{
cout << v[i] << " ";
}
system("pause");
return 0;
}