用线性表的顺序存储结构实现两个集合A,B的合并功能(A=AUB) 用线性表的顺序存储结构实现两个集合A,B的合并功能(A=AUB)。 A={1,2,3} B={1,3,4,5} 最后A={1,2,3,4,5}并写出C语言完整代码
时间: 2023-05-12 18:04:05 浏览: 184
以下是C语言完整代码:
#include <stdio.h>
#define MAXSIZE 100
typedef struct {
int data[MAXSIZE];
int length;
} SqList;
void InitList(SqList *L) {
L->length = 0;
}
void ListInsert(SqList *L, int elem) {
if (L->length == MAXSIZE) {
printf("List is full.\n");
return;
}
L->data[L->length] = elem;
L->length++;
}
void MergeList(SqList *La, SqList Lb) {
int i;
for (i = 0; i < Lb.length; i++) {
int elem = Lb.data[i];
int j;
for (j = 0; j < La->length; j++) {
if (La->data[j] == elem) {
break;
}
}
if (j == La->length) {
ListInsert(La, elem);
}
}
}
int main() {
SqList A, B;
InitList(&A);
InitList(&B);
ListInsert(&A, 1);
ListInsert(&A, 2);
ListInsert(&A, 3);
ListInsert(&B, 1);
ListInsert(&B, 3);
ListInsert(&B, 4);
ListInsert(&B, 5);
MergeList(&A, B);
int i;
for (i = 0; i < A.length; i++) {
printf("%d ", A.data[i]);
}
printf("\n");
return 0;
}
阅读全文