Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

kth เล็กที่สุด/ใหญ่ที่สุดในช่วงขนาดเล็กที่ไม่เรียงลำดับอาร์เรย์ใน C++


ในบทช่วยสอนนี้ เราจะเขียนโปรแกรมที่จะหาจำนวนที่น้อยที่สุดเป็นอันดับที่ k ในอาร์เรย์ที่ไม่เรียงลำดับ

มาดูขั้นตอนการแก้ปัญหากัน

  • เริ่มต้นอาร์เรย์และ k.
  • จัดเรียงอาร์เรย์โดยใช้วิธีการจัดเรียง
  • คืนค่าจากอาร์เรย์ด้วยดัชนี 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

บทสรุป

หากคุณมีข้อสงสัยใดๆ ในบทแนะนำ โปรดระบุในส่วนความคิดเห็น