Phép giao
Tập hợp các phần tử chung của hai mảng. Ví dụ: {1,2,3,4,6} ∩ {1,2,5,6,7} = {1,2,6}
Logic
k = 0;
for i = 0..size1-1
for j = 0..size2-1
if a[i] == b[j]
intersection[k++] = a[i];
Sau đó sắp xếp và loại bỏ trùng lặp.
Chương trình C
#include <stdio.h>
int removerepeated(int size, int a[]);
void sort(int size, int a[]);
main() {
int i, size1, size2, j = 0, k, intersectionsize;
printf("Kích thước mảng 1: "); scanf("%d", &size1);
printf("Kích thước mảng 2: "); scanf("%d", &size2);
int a[size1], b[size2], intersection[size1 < size2 ? size1 : size2];
printf("Nhập mảng 1:\n"); for(i=0;i 0) for(i=0;ia[j]) { int t=a[i]; a[i]=a[j]; a[j]=t; }
}
Kết quả
Kích thước mảng 1: 5 Kích thước mảng 2: 2 Mảng 1: 4 5 6 7 8 Mảng 2: 4 1 Mảng sau giao: 4