实现(第 2 部分)
Coddy 基数排序:数据结构与算法系列 课程的第 6 课,共 9 课。
现在,我们对每个数位分别运行一次计数排序。
挑战
中等现在把所有内容组合起来,完成整个算法。
编写一个名为 radixSort 的函数,它接收一个由非负整数组成的数组,并使用按位计数排序对每个数位位置各排序一次,返回按升序排列的数组。
找到最大值,然后让 exp 依次取 1、10、100……只要该数位位置上还有数字,就运行 countingSortByDigit,并将 exp 乘以 10。
复用上一课中的计数排序作为辅助函数。
亲手试试
#include <stdlib.h>
int* radixSort(int* arr, int arr_size, int* returnSize) {
// 在这里编写代码
*returnSize = arr_size;
return arr;
}
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基数排序:数据结构与算法系列中的所有课
自己练习: C 在线编译器