您的位置:首页 > 其它

数组第k大的数

2015-10-14 19:42 232 查看
快排的思想:
class Solution {public:int findKthLargest(vector<int>& nums, int k) {int L = 0, R = nums.size() - 1;while (L < R) {int left = L, right = R;int key = nums[left];while (left < right) {while (left < right && nums[right] < key) --right;nums[left] = nums[right];while (left < right && nums[left] >= key) ++left;nums[right] = nums[left];}nums[left] = key;if (left == k - 1) return nums[k - 1];else if (left > k - 1) R = left - 1;else L = left + 1;}return nums[k - 1];}};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: