data_int
#include"head.h"
structLNode{
//chardata[10];
intdata;
structLNode*next;
};
typedefstructLNode*LinkList;
voidInitList_L(LinkList&L)//链表构造函数
{
L=newLNode;
L->next=NULL;
}
voidPrintList_L(LinkList&H)//链表显示函数
{
LinkListL=H;
L=L->next;
while(1)
{
cout<<"datavalueis"<<L->data<<endl;
L=L->next;
if(L==NULL)
return;
}
}
voidInsert_L(LinkList&H,intn=0)//插入链表
{
LinkListL=H;
LinkListp=L;
inti=0;
if(n==0)
{
n=1;
while(p->next!=NULL)
{
p=p->next;
n++;
}
}
elseif(n<1)
{
cout<<"error"<<endl;
return;
}
for(i=0;i<n-1;i++)
{
if(L->next==NULL)
{
cout<<"error"<<endl;
return;
}
L=L->next;
}
p=newLNode;
cout<<"pleaseinputavalue:";
cin>>p->data;
p->next=L->next;
L->next=p;
}
LinkListbing_LinkList(LinkLista,LinkListb)
{
LinkListc;
LinkListnc;
LinkListt;
InitList_L(c);
nc=c;
a=a->next;
while(a!=NULL)//复制a到c
{
t=newLNode;
t->data=a->data;
nc->next=t;
t->next=NULL;
nc=nc->next;
a=a->next;
}
b=b->next;
while(b!=NULL)
{
nc=c;
while(nc->next!=NULL)
{
if(nc->next->data==b->data)
break;
nc=nc->next;
}
if(nc->next==NULL)
{
t=newLNode;
t->data=b->data;
nc->next=t;
t->next=NULL;
nc=nc->next;
}
b=b->next;
}
returnc;
}
voidmain()
{
LinkLista,b,c;
inti=0;
InitList_L(a);
cout<<"nIwillinputdate."<<endl;
for(i=1;i<=3;i++)
Insert_L(a,i);
//PrintList_L(a);
InitList_L(b);
cout<<"nIwillinputdate."<<endl;
for(i=1;i<=3;i++)
Insert_L(b,i);
//PrintList_L(b);
c=bing_LinkList(a,b);
PrintList_L(c);
}