已知两个链表A和B分别表示两个集合,其元素递增排列。请设计算法求出两个集
合A和B的差集(即仅由在A中出现而不在B中出现的元素所构成的集合),并以同样的形
式存储,同时返回该集合的元素个数。
#include <iostream>
using namespace std;
typedef int ElemType;
typedef int status;
//定义单链表
typedef struct LNode
{
ElemType data;
struct LNode *next;
} LNode, *LinkList;
//求表长
int Length(LinkList L)
{
LNode *p = L->next;
int len = 0;
while(p)
{
p = p->next;
len++;
}
return len;
}
//尾插法创建单链表
LinkList CreatList_R(LinkList &L, int n)
{
L = new LNode; //为新结点开辟空间
L->next = NULL; //初始化,结点的Next域置空
LNode *r = L; //尾指针指向头结点
for (int i = 0; i < n; i++)
{
LNode *p = new LNode; //生成新结点
cin >> p->data;
p->next = NULL; //新结点next域置空
r->next = p; //尾结点的next指向新结点p(此时P为新的尾结点)
r = p; //然后将p赋给尾结点r
}
return L;
}
//输出
int DispList(LinkList L
数据结构第二章课后习题第四题(求差集)
最新推荐文章于 2023-10-10 23:30:19 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)