数据结构 - -集合运算课程设计报告(C++) 下载本文

{ } int i;

cout<<\请问您要构建几个集合(小于10个):\cin>>i; COUNT=i;

cout<<\输入数据时,输入0表示输入结束\while(i) { }

cout<<\集合\L[COUNT-i]=Linklist(L[COUNT-i]); i--;

(4)操作函数

【1】交集运算

LNode * Cross(LNode *L1,LNode *L2) {

LNode *q1,*q2,*L,*q; L=NULL; q1=L1;

while(q1!=NULL) {

}

}

q2=L2;

while(q2!=NULL) { }

q1=q1->next;

if(q2->data==q1->data) { }

q2=q2->next;

q= (LNode*)malloc(sizeof(LNode)); q->data=q2->data; q->next=L; L=q; break;

return L;

【2】并集运算

LNode * Union(LNode *L1,LNode *L2) {

LNode *q1,*q2,*L,*q; int frag=0;

L=NULL; q1=L1;

while(q1!=NULL) { }

q= (LNode*)malloc(sizeof(LNode)); q->data=q1->data; q->next=L; L=q; q1=q1->next;

q2=L2;

while(q2!=NULL) {

q1=L1; frag=0; if(q1!=NULL) {

while(q1) {

if(q1->data==q2->data) {

frag=1;

}

}

}

}

}

break;

q1=q1->next;

if(frag!=1) { }

q2=q2->next;

q= (LNode*)malloc(sizeof(LNode)); q->data=q2->data; q->next=L; L=q;

return L;

【3】差集运算

LNode * Subtract(LNode *L1,LNode *L2) {

LNode *L,*p,*q,*test; int flag=0;