用C++语言实现2个数组的交集 和并集的函数,交集和并集按照从小到大的顺序输出。
时间: 2023-09-13 08:13:47 浏览: 38
交集函数:
```c
void intersection(int a[], int b[], int n, int m) {
int i = 0, j = 0;
while (i < n && j < m) {
if (a[i] < b[j]) {
i++;
} else if (a[i] > b[j]) {
j++;
} else {
printf("%d ", a[i]);
i++;
j++;
}
}
}
```
并集函数:
```c
void unionSet(int a[], int b[], int n, int m) {
int i = 0, j = 0;
while (i < n && j < m) {
if (a[i] < b[j]) {
printf("%d ", a[i]);
i++;
} else if (a[i] > b[j]) {
printf("%d ", b[j]);
j++;
} else {
printf("%d ", a[i]);
i++;
j++;
}
}
while (i < n) {
printf("%d ", a[i]);
i++;
}
while (j < m) {
printf("%d ", b[j]);
j++;
}
}
```
以上代码中,`a` 和 `b` 分别表示两个数组,`n` 和 `m` 分别表示两个数组的长度。交集函数 `intersection` 从小到大输出两个数组的交集,而并集函数 `unionSet` 从小到大输出两个数组的并集。