实现(第 1 部分)
Coddy 归并排序:数据结构与算法系列 课程的第 5 课,共 9 课。
我们将从核心操作开始,逐步构建归并排序。
挑战
简单归并排序的核心是将两个已经排好序的列表合并成一个有序列表。我们先来实现这一步。
编写一个名为 merge 的函数,它接收两个已排序的整数数组 left 和 right,并返回一个包含它们所有元素的有序数组。
同时遍历两个数组:每次取出两个数组最前面的元素中较小的那个。当一个数组取完后,将另一个数组中剩下的所有元素追加到结果中。
亲手试试
#include <stdlib.h>
int* merge(int* left, int left_size, int* right, int right_size, int* returnSize) {
// 在这里编写代码
*returnSize = 0;
return left;
}
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
归并排序:数据结构与算法系列中的所有课
自己练习: C 在线编译器