根据对称性,第 k 大和第 k 小,在实现上,是一致的,我们就以第 k 小为例,进行说明: 法 1 直接排序(sort(A, A+N)),当使用一般时间复杂度的排序算法时,其时间复杂度为 O(N2) 法 2 先将 k 个元素读入一个数组并将其排序,sort(A, A+k),则这些元素的最大值在第 k 个位置上.我们一个一个处理剩余的元素,当一个元素开始被处理时,它先于数组中第 k 个元素比较, 如果该元素大,不做任何处理,遍历下一个元素: 如果该元素小,则将该元素插入在前面合适的位置: 代码逻辑