[LeetCode-interview algorithm classic-Java implementation] [215-Kth Largest Element in an Array (number of K in the Array)], leetcode -- java
[215-Kth Largest Element in an Array (number of K in the Array )][LeetCode-interview algorithm classic-Java implementation] [directory indexes for all questions]Download the Code [https://github.com/wang-jun-chao]Original question
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.
For example,
Given[3,2,1,5,6,4]
And k = 2, return 5.
Note:
You may assume k is always valid, 1 ≤ k ≤ array's length.
Theme
Find the largest k element from an unsorted array. Note that it is the k-th largest after sorting, rather than the k-th non-repeating element. It can be assumed that k must be valid, and 1 ≤ k ≤ array length.
Solutions
O (n) solution: quick select Algorithm
Code Implementation
Algorithm Implementation class
Import java. util. collections; public class Solution {public int findKthLargest (int [] nums, int k) {if (k <1 | nums = null | nums. length <k) {throw new IllegalArgumentException ();} return findKthLargest (nums, 0, nums. length-1, k);} public int findKthLargest (int [] nums, int start, int end, int k) {// The central value int starting = nums [start]; int lo = start; int hi = end; while (lo
Evaluation Result Click the image. If you do not release the image, drag it to a position. After the image is released, you can view the complete image in the new window.
Note Please refer to the following link for more information: http://blog.csdn.net/derrantcm/article/details/48046265] Copyright Disclaimer: This article is an original article by the blogger and cannot be reproduced without the permission of the blogger.