202226.cpp

来自「数据结构(清华版)」· C++ 代码 · 共 54 行

CPP
54
字号
#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 &C)
{
	LList p,q,r;
	p=A->next;q=B->next;
	C=new LNode;
	C->next=NULL;r=C;
	while(p&&q)
	{
		if(p->data>q->data) q=q->next;
		else if(p->data<q->data) p=p->next;
		else 
		{r->next=p;r=r->next;q=q->next;p=p->next;}
	}
}
//主函数
void main()
{
	LList A,B,C,p;//声明线性表
	Elemtype a[]={1,3,4,7};
	Elemtype b[]={2,4,7};
	ListCreate( A,4,a);//调用构建函数
	ListCreate( B,3,b);
	ListSame ( A,B,C);//调用交集函数
	cout<<"链表AB的相同元素";
	p=C->next ;
	while(p)
	{
		cout<<" "<<p->data<<"  ";	
		p=p->next;
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?