2.5 试编写算法,从顺序表中删除所有值重复的元素,是所有元素的值均不同。注意表中未必是排好序的,且每个值的第一次出现应当保留
#include<iostream>
#define MaxSize 100
using namespace std;
int s,t;
bool v[MaxSize];
struct SqList
{
int a[MaxSize];
int len;
};
void Del(SqList *L){
for(int i=0;i<L->len;i++) v[L->a[i]]=true;
int j=0;
for(int i=0;i<L->len;i++){
if(v[L->a[i]]==true){
v[L->a[i]]=false;
L->a[j]=L->a[i];//出现一次元素就记录下来,之后就无法记录
j++;
}
}
L->len=j;
}
int main()
{
SqList *L; L->len=8;
for(int i=0;i<L->len;i++) L->a[i]=(i+2)%3;
Del(L);
for(int i=0;i<L->len;i++) cout<<L->a[i]<<" ";
return 0;
}