博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
215. Kth Largest Element in an Array
阅读量:5809 次
发布时间:2019-06-18

本文共 1369 字,大约阅读时间需要 4 分钟。

Find the kth largest element in an unsorted array. Note that it is the kth largest element in the sorted order, not the kth distinct element.

Example 1:

Input: [3,2,1,5,6,4] and k = 2Output: 5

Example 2:

Input: [3,2,3,1,2,4,5,5,6] and k = 4Output: 4

Note:

You may assume k is always valid, 1 ≤ k ≤ array's length.

难度:medium

题目:找出在没有排序的数组中第K大的元素,注意是排序后的第K大的元素,不是第K个不同元素。

思路:快速排序

Runtime: 29 ms, faster than 36.08% of Java online submissions for Kth Largest Element in an Array.

Memory Usage: 38.8 MB, less than 51.09% of Java online submissions for Kth Largest Element in an Array.

class Solution {    public int findKthLargest(int[] nums, int k) {        int idx = -1;        k = nums.length - k;        for (int i = 0, j = nums.length - 1; i <= j && idx != k;) {            idx = quickSort(nums, i, j);            if (idx < k) {                i = idx + 1;            } else if (idx > k) {                j = idx - 1;            }        }                return nums[idx];    }        private int quickSort(int[] nums, int i, int j) {        int piovt = nums[i];        while (i < j) {            while (i < j && nums[j] >= piovt) {                j--;            }            nums[i] = nums[j];            while (i < j && nums[i] < piovt) {                i++;            }            nums[j] = nums[i];        }        nums[i] = piovt;                return i;    }}

转载地址:http://dojbx.baihongyu.com/

你可能感兴趣的文章
Gradle之module间依赖版本同步
查看>>
java springcloud版b2b2c社交电商spring cloud分布式微服务(十五)Springboot整合RabbitMQ...
查看>>
10g手动创建数据库
查看>>
Windwos Server 2008 R2 DHCP服务
查看>>
UVa 11292 勇者斗恶龙(The Dragon of Loowater)
查看>>
白话算法(7) 生成全排列的几种思路(二) 康托展开
查看>>
d3 v4实现饼状图,折线标注
查看>>
微软的云策略
查看>>
Valid Parentheses
查看>>
【ES6】数值的扩展
查看>>
性能测试之稳定性测试
查看>>
ES6的 Iterator 遍历器
查看>>
2019届高二(下)半期考试题(文科)
查看>>
nginx 301跳转到带www域名方法rewrite(转)
查看>>
AIX 配置vncserver
查看>>
windows下Python 3.x图形图像处理库PIL的安装
查看>>
【IL】IL生成exe的方法
查看>>
network
查看>>
SettingsNotePad++
查看>>
centos7安装cacti-1.0
查看>>