一般性选择问题(在N个数中选第K大或第K小)
问题:选第k小.输入:数组S,S的长度n,正整数k(1 <= k <= n).输出:第k小的数.算法1:调用k次选最小算法,时间复杂度O(kn)算法2:先排序,然后输出第k小的数,时间复杂度O(nlogn)算法3:分治算法下面我们来讨论算法3.设计思想(假设数组中数据无重复):用数组S中的某个元素m做标准将S划分成S1与S2,其中S1中的元素小于m,S2中的元素大于等于m 如果k <= |S1|,则在S1中找第k小。如果k == |S1| + 1,则m