📄 202228.cpp
字号:
#include<iostream.h>
typedef int Elemtype;
//构建结构体
typedef struct LNode
{
Elemtype data;
LNode *next;
}*LList ;
//创建链表
void ListCreate(LList &L,int n,Elemtype a[])
{
LList s;
L=new LNode;L->next=NULL;
for(int i=n-1;i>=0;i--)
{
s=new LNode;
s->data=a[i];
s->next=L->next;
L->next=s;
}
}
void ListSame(LList A,LList B)
{
LList p,q,r,s;
r=A;q=B->next;p=r->next;
while(p&&q)
{
if(p->data>q->data) q=q->next;
else if(p->data<q->data){s=p; p=p->next;delete s;r->next=p;}
else
{
if(q->data==q->next->data&&p->data==p->next->data)
{
s=p; p=p->next;delete s;r->next=p;
q=q->next;
p=p->next;
}
q=q->next;
p=p->next;
}
}
delete B;
}
//主函数
void main()
{
LList A,B,C,p;//声明线性表
Elemtype a[]={1,4,4,7};
Elemtype b[]={4,4,7};
ListCreate( A,4,a);//调用构建函数
ListCreate( B,3,b);
ListSame ( A,B);//调用交集函数
cout<<"链表A B的相同元素";
p=A->next ;
while(p)
{
cout<<" "<<p->data<<" ";
p=p->next;
}
cout<<endl;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -