#include
#include
#define ok 1
#define error 0
typedef int EleType;
typedef int Status;
typedef struct Nnode
{
EleType data;
struct Nnode *next;
}Node,*Link;
void create(Link &L,int n)
{
Link p;
L=new Node;
L->next=NULL;
for(int i=n;i>0;i--)
{
p=new Node;
printf("input:%dn",i);
scanf("%d",&p->data);
p->next=L->next;
L->next=p;
}
}
void readlist(Link L)
{
Link p;
p=L->next;
while(p)
{
printf("%d ",p->data);
p=p->next;
}
}
EleType len(Link L)
{
int a=0;
Link p;
p=L->next;
while(p)
{
a++;
p=p->next;
}
return a;
}
void insert(Link &L,int length,int e)
{
Link p;
p=L;
int i=0;
while(inext;
i++;
}
Link s;
s=new Node;
s->data=e;
s->next=p->next;
p->next=s;
}
int locate(Link L,int e)
{
Link p;
p=L->next;
while(p&&p->data!=e)
p=p->next;
if(!p)
return error;
else
return ok;
}
int get(Link L,int i)
{
int e;
Link p;
p=L->next;
int a;
for(a=1;anext;
e=p->data;
return e;
}
void mix(Link &la,Link lb)
{
int m,n,i,e;
n=len(lb);
for(i=1;i<=n;i++)
{
m=len(la);
e=get(lb,i);
if(!locate(la,e))
insert(la,m,e);
}
}
int main()
{
int a,b;
Link x,y;
printf("请输入个数:");
scanf("%d",&a);
create(x,a);
printf("la=(");
readlist(x);
printf(")n");
printf("n请输入个数:");
scanf("%d",&b);
create(y,b);
printf("lb=(");
readlist(y);
printf(")n");
mix(x,y);
printf("nmix=(");
readlist(x);
printf(")n");
system("pause");
}