c两个有序数组插入排序
时间: 2024-01-23 07:14:21 浏览: 32
以下是两种方法实现两个有序数组的插入排序:
方法1(比较法):
```c
#include <stdio.h>
void mergeArrays(int nums1[], int m, int nums2[], int n) {
int i = m - 1;
int j = n - 1;
int k = m + n - 1;
while (i >= 0 && j >= 0) {
if (nums1[i] > nums2[j]) {
nums1[k] = nums1[i];
i--;
} else {
nums1[k] = nums2[j];
j--;
}
k--;
}
while (j >= 0) {
nums1[k] = nums2[j];
j--;
k--;
}
}
int main() {
int nums1[] = {1, 2, 3, 0, 0, 0};
int m = 3;
int nums2[] = {2, 5, 6};
int n = 3;
mergeArrays(nums1, m, nums2, n);
printf("Merged array: ");
for (int i = 0; i < m + n; i++) {
printf("%d ", nums1[i]);
}
printf("\n");
return 0;
}
```
方法2(插入法):
```c
#include <stdio.h>
void mergeArrays(int nums1[], int m, int nums2[], int n) {
int i = m - 1;
int j = n - 1;
int k = m + n - 1;
while (i >= 0 && j >= 0) {
if (nums1[i] > nums2[j]) {
nums1[k] = nums1[i];
i--;
} else {
nums1[k] = nums2[j];
j--;
}
k--;
}
while (j >= 0) {
nums1[k] = nums2[j];
j--;
k--;
}
}
int main() {
int nums1[] = {1, 2, 3, 0, 0, 0};
int m = 3;
int nums2[] = {2, 5, 6};
int n = 3;
mergeArrays(nums1, m, nums2, n);
printf("Merged array: ");
for (int i = 0; i < m + n; i++) {
printf("%d ", nums1[i]);
}
printf("\n");
return 0;
}
```
相关推荐
![-](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_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)