【題解】數組中的第K個最大元素

在未排序的數組中找到第 k 個最大的元素。請注意,你需要找的是數組排序後的第 k 個最大的元素,而不是第 k 個不同的元素。

示例 1:
輸入: [3,2,1,5,6,4] 和 k = 2
輸出: 5
示例 2:
輸入: [3,2,3,1,2,4,5,5,6] 和 k = 4
輸出: 4

解題思路
1、先將數組排序
2、直接返回指定位置的最大值


力扣編譯器

static int comp(const void* a, const void* b){
    return *(int*)a - *(int*)b;
}
int findKthLargest(int* nums, int numsSize, int k){
    //判斷數組數據合法性
    if(nums == NULL) return 0;
    //將數組進行排序
    qsort(nums, numsSize, sizeof(int), comp);
    //返回指定的最大元素
    return nums[numsSize - k];
}

這道題用來C 庫裏面的排序函數,有點過於投機。等後面再從寫的時候再更新。
還有,文章確實更新不完了(咕咕咕咕~)被迫降低標準。哈哈哈


本月更新進度 9/10

創作不易,你的點贊是我最大的動力!!!
我們下次再見 end~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章