1.问题 设L是n个元素的集合,从L中选取第K小的元素,其中1<=K<=n。 2.解析 1.选取序列中的任意数m,若m满足比m小的数有|S1|+1,则m为第K小的数 2.若K<|S1|,则缩小问题规模,归纳为在S1中寻找第K小。 3.若K>|S2|,则缩小问题规模,归纳为在S2中寻找第K-|S1|-1小。 4.不断重复步骤1,2,3,直到找到第K小的数为止。 3.设计 void getKth(int arr[], int low, int high, int K