删除重复数组中重复元素
问题:把一个整形数组中重复的数字去掉
#include<stdio.h>
int delnum(int *num,int n)
{
int i = 0;
int j = 1;
while(j<n)
{
if(num[i] != num[j])
num[++i] = num[j];
j++;
}
return ++i;
}
void main()
{
int num[] = {1,1,1,1,2,2,5,4,4,4,0};
int n;
n = delnum(num,11);
printf("after del:\n");
int k = 0;
for(k;k<n;k++)
printf("%d ",num[k]);
printf("\n");
}
delnum函数中的遍历部分类似于快速排序中的partition方法:
参考:http://blog.csdn.net/v_JULY_v/article/details/6211155
浙公网安备 33010602011771号