int *RemoveDup(int arr[], int n)
{
int *tmp = NULL;
int *arr_new = NULL;
arr_new = (int *)malloc(n*sizeof(int));
tmp = arr_new;
set<int> s;
pair<set<int>::iterator, bool> p;
// list<int> l; 用list也可以保存
int k = 0;
for (int i=0;i<n;i++)
{
p=s.insert(arr[i]);
if (p.second)
{
// l.push_back(arr[i]);
*tmp = arr[i];
k++;
tmp++;
}
}
*tmp='\0';
return arr_new;
}
int _tmain(int argc, _TCHAR* argv[])
{
int arr[12]={11,12,13,14,15,16,17,18,19,17,18,20};
int *res = NULL;
res = RemoveDup(arr,12);
while(*res)
{
printf("%d\n",*res);
res++;
}
system("pause");
return 0;
}c++ 删除整形数组中重复的数字
最新推荐文章于 2025-04-05 18:02:45 发布

2万+

被折叠的 条评论
为什么被折叠?



