package main
/**
*
* @param a int整型一维数组
* @param n int整型
* @param K int整型
* @return int整型
*/
func findKth( a []int , n int , K int ) int {
arr := a
quickSort(arr, 0, len(arr)-1)
return arr[K-1]
}
func quickSort(arr []int, left, right int) {
if left > right {
return
}
pivot := getPivot(arr, left, right)
quickSort(arr, left, pivot-1)
quickSort(arr, pivot+1, right)
}
func getPivot(arr []int, left, right int) int {
pivot := left
for left < right {
for left < right && arr[right] <= arr[pivot] {
right--
}
for left < right && arr[left] >= arr[pivot] {
left++
}
arr[right], arr[left] = arr[left], arr[right]
}
arr[pivot], arr[left] = arr[left], arr[pivot]
return left
}