TOP101题解 | BM46#最小的K个数#
最小的K个数
https://www.nowcoder.com/practice/6a296eb82cf844ca8539b57c23e6e9bf
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * @author Senky * @date 2023.08.25 * @par url https://www.nowcoder.com/creation/manager/content/584337070?type=column&status=-1 * @brief * * @param input int整型一维数组 * @param inputLen int input数组长度 * @param k int整型 * @return int整型一维数组 * @return int* returnSize 返回数组行数 */ #include <stdlib.h> //快排 int compar(const void* q1, const void* q2) { return (*(int*)q1 - *(int*)q2); } int* GetLeastNumbers_Solution(int* input, int inputLen, int k, int* returnSize ) { // write code here if( 0 == k) { return NULL; } qsort(input, inputLen, sizeof(input[0]), compar); int* result = (int*)malloc(sizeof(int)); *returnSize = 0; for(int i = 0; i < k ; i++) { result[(*returnSize)++] = input[i]; result = realloc(result, (*returnSize + 1)*sizeof(int)); } return result; }#TOP101#
TOP101-BM系列 文章被收录于专栏
系列的题解