2020-03-02:在无序数组中,如何求第K小的数?
福哥答案2021-03-02:
1.堆排序。时间复杂度:O(N*lgK)。有代码。
2.单边快排。时间复杂度:O(N)。有代码。...make([]int, len(arr))
copy(arrc, arr)
return process2(arrc, 0, len(arr)-1, k-1)
}
// arr 第k小的数...bfprt(arr, rang[1]+1, R, index)
}
}
// arr[L...R] 五个数一组
// 每个小组内部排序
// 每个小组中位数领出来,组成marr
// marr中的中位数...+10....L+14
mArr[team] = getMedian(arr, teamFirst, getMin(R, teamFirst+4))
}
// marr中,