leetcode215 陣列中的第K個最大元素

2022-09-09 15:18:31 字數 815 閱讀 3845

給定整數陣列nums和整數k,請返回陣列中第**k**個最大的元素。

請注意,你需要找的是陣列排序後的第k個最大的元素,而不是第k個不同的元素。

輸入: [3,2,1,5,6,4] 和 k = 2

輸出: 5

輸入: [3,2,3,1,2,4,5,5,6] 和 k = 4

輸出: 4

/**

* @param nums

* @param k

* @return

*/var findkthlargest = function(nums, k) )

// return nums[k-1]

//快速排序,找右側第k個位置

quicksort(0,nums.length-1,k)

return res

function quicksort(i,j,k)else

}//左邊指標向右移動,直到遇到大於tmp的,然後將其賦值到j的位置

while(i}

}//i的位置就是tmp的位置

nums[i]=tmp

//如果i剛好時當前陣列中倒數第k個

if(i==nums.length-k)

//遞迴呼叫左右兩邊

quicksort(origin_i,i-1,k)

quicksort(i+1,origin_j,k)

}};

LeetCode 215 陣列中的第K個最大元素

在未排序的陣列中找到第 k 個最大的元素。請注意,你需要找的是陣列排序後的第 k 個最大的元素,而不是第 k 個不同的元素。示例 1 輸入 3,2,1,5,6,4 和 k 2 輸出 5 示例 2 輸入 3,2,3,1,2,4,5,5,6 和 k 4 輸出 4 說明 你可以假設 k 總是有效的,且 1...

LeetCode 215 陣列中的第K個最大元素

在未排序的陣列中找到第 k 個最大的元素。請注意,你需要找的是陣列排序後的第 k 個最大的元素,而不是第 k 個不同的元素。示例 1 輸入 3,2,1,5,6,4 和 k 2 輸出 5 示例 2 輸入 3,2,3,1,2,4,5,5,6 和 k 4 輸出 4 說明 你可以假設 k 總是有效的,且 1...

Leetcode215 陣列中的第K個最大元素

在未排序的陣列中找到第 k 個最大的元素。請注意,你需要找的是陣列排序後的第 k 個最大的元素,而不是第 k 個不同的元素。示例 1 輸入 3,2,1,5,6,4 和 k 2 輸出 5 示例 2 輸入 3,2,3,1,2,4,5,5,6 和 k 4 輸出 4 說明 你可以假設 k 總是有效的,且 1...