对有序顺序表去重并保持有序状态

  • 对有序数组进行去重
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <stdio.h>
#define maxsize 7
int delsame(int arr[]);
int length=maxsize;
void main()
{
int s[maxsize]={1,2,2,3,4,4,7};
delsame(s);
}

int delsame(int arr[])
{
int i=0;
int j;
for(j=0;j<maxsize;j++)
{ if(length==0)
return 0;
if(arr[i]!=arr[j])
{
++i;
arr[i]=arr[j];
}
}
length=i+1;

//打印最终的结果
for(int m=0;m<length;m++)
{
printf("%d",arr[m]);

}
}