首页 > 代码库 > 集合运算(A-B)U(B-A)
集合运算(A-B)U(B-A)
实质是两个数组的合并(顺序表最好是有序的)
#include<iostream> using namespace std; //创建顺序表 void create(int A[],int length){ for(int i=0;i<length;i++){ cin>>A[i]; } } //打印顺序表 void show(int A[],int length){ cout<<A[0]; for(int i=1;i<length;i++){ cout<<‘ ‘<<A[i]; } cout<<endl; } void _insert(int A[],int &length,int n){ int i=0; while(i<length&&A[i]<n){ i++; } int temp=i; i=length; while(i>temp){ A[i]=A[i-1]; i--; } A[temp]=n; length++; } int locate(int A[],int length,int n){ int i=0; while(i<length&&A[i]!=n){ i++; } if(i>=length){ return 0; } else { return 1; } } //主要操作 int MergeList(int A[],int &la,int B[],int lb){ int i=0; while(i<lb){ if(locate(A,la,B[i])){ i++; } else{ _insert(A,la,B[i++]); } } } int main(){ int A[20],B[20]; int la,lb; //输入A,B的长度 while(cin>>la>>lb){ //使A的长度小于B if(la>lb){swap(la,lb);} create(A,la);//创建顺序表A create(B,lb);//创建顺序表B MergeList(A,la,B,lb); show(A,la); } }
集合运算(A-B)U(B-A)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。