在 C++ 中的範圍較小的無序陣列中查詢第 k 個最小/最大值


在本教程中,我們將編寫一個程式來查詢無序陣列中的第 k 個最小數字。

讓我們看看解決問題的方法。

  • 初始化陣列和 k。
  • 使用 sort 方法對陣列排序。
  • 從帶有索引 k - 1 的陣列中返回值。

讓我們看看程式碼。

示例

 線上演示

#include <bits/stdc++.h>
using namespace std;
int findKthSmallestNumber(int arr[], int n, int k) {
   sort(arr, arr + n);
   return arr[k - 1];
}
int main() {
   int arr[] = { 3, 5, 23, 4, 15, 16, 87, 99 }, k = 5;
   cout << findKthSmallestNumber(arr, 7, k) << endl;
   return 0;
}

輸出

如果執行以上程式碼,則將獲得以下結果。

16

結論

如果對本教程有任何疑問,請在評論部分提到。

更新日期: 09-Apr-2021

87 次瀏覽

啟動你的 職業生涯

完成課程獲得認證

開始
廣告
© . All rights reserved.