集合运算(A-B)U(B-A)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了集合运算(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)的主要内容,如果未能解决你的问题,请参考以下文章

静态链表实现 (A-B)U(B-A)

三元运算符

R 按唯一列 PAIRS(B-A 和 A-B)和非唯一组合(B-A 或 A-B)对观察结果求和

第五次笔记

Neon 指令,vsub_f32(a, b),是 a-b 还是 b-a?

Excel 怎样求差集,并集和交集还有容错