在C ++中使用STL的第K个最小/最大元素
在本教程中,我们将编写一个程序,该程序在未排序的数组中找到第k个最小的数字。
让我们看看解决问题的步骤。
初始化数组和k。
初始化一个空的有序集合。
遍历数组并将每个元素插入数组。
从0到k-1遍历集合。
返回值。
示例
让我们看一下代码。
#includeusing namespace std; int findKthSmallestNumber(int arr[], int n, int k) { set set; for (int i = 0; i < n; i++) { set.insert(arr[i]); } auto it = set.begin(); for (int i = 0; i < k - 1; i++) { it++; } return *it; } int main() { int arr[] = { 45, 32, 22, 23, 12 }, n = 5, k = 3; cout << findKthSmallestNumber(arr, n, k) << endl; return 0; }
输出
如果运行上面的代码,则将得到以下结果。
23
热门推荐
10 朋友新年祝福语大全 简短
11 新年祝福语简短大方兔年
12 搬新家礼物祝福语简短
13 同学见面花束祝福语简短
14 五一假期祝福语幽默简短
15 离职欢送敬酒祝福语简短
16 对学弟的祝福语简短
17 考老师辞职祝福语简短
18 祝福语驱散霉运的话简短