用visual C++写出将两个顺序存储的有序表A和B合成一个有序表C的算法。 A 表1 4 6 7 9 B表 2 3 8 11 合成的有序C表1 2 3 4 6 7 8 9 11
时间: 2023-12-10 17:41:34 浏览: 33
下面是一种基于归并排序的算法实现:
```c++
#include <iostream>
#define MAXSIZE 100
using namespace std;
typedef struct {
int data[MAXSIZE];
int length;
} SqList;
void Merge(SqList A, SqList B, SqList &C) {
int i = 0, j = 0, k = 0;
while (i < A.length && j < B.length) {
if (A.data[i] <= B.data[j]) {
C.data[k++] = A.data[i++];
} else {
C.data[k++] = B.data[j++];
}
}
while (i < A.length) {
C.data[k++] = A.data[i++];
}
while (j < B.length) {
C.data[k++] = B.data[j++];
}
C.length = k;
}
int main() {
SqList A = {{1, 4, 6, 7, 9}, 5};
SqList B = {{2, 3, 8, 11}, 4};
SqList C;
Merge(A, B, C);
for (int i = 0; i < C.length; i++) {
cout << C.data[i] << " ";
}
return 0;
}
```
输出结果为:`1 2 3 4 6 7 8 9 11`
相关推荐
![application/x-dosexec](https://img-home.csdnimg.cn/images/20210720083343.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)