题解 | #找到数组里的第k大数(C++)#
找到数组里的第k大数(C++)
https://www.nowcoder.com/practice/2d5e11b766654104ac91a54fe3a9f5db
题目意思肯定错了吧
要求的是求第k大 结果答案是第k小 我的思路 还是按照从大到小排序取数组后面的数; 当然 从小到大排序 也是可以的
#include<bits/stdc++.h>
#include <functional>
using namespace std;
int main(){
int n,k;
vector<int>a;
// write your code here......
cin >> n >> k;
for(int i = 0; i < n; i ++){
int t;
cin >> t;
a.push_back(t);
}
sort(a.begin(), a.end(), greater<int>());
for(int i = 0; i < n; i ++){
// cout << a[i] << " ";
}
cout << a[n - k ] << endl;
return 0;
}