题目 在一个无序数组里找第K大的数 比如 array = [3, 4, 1, 2],第一大的数是4,第四大的数是1。 解法1:排序 时间复杂度n*log(n) 解法2:partition 大家都记得快排里的partition函数吧?一次操作之后,可以知道轴元素在有序数组中的位置l, 如果l=k,那么轴元素就是所求; 如果l<k,说明k元素在l之后,缩小下标范围在后半段继续partition 如果l>k,说明k元素在l之前,在前半段继续partition。 注意:这里partition函数应当把大元素放...