为达到目的,若全排所有数据,显然做了很多无用功,所有的排序算法思想,主要有两种思路:1. 为元素找位置(例如快排) 2.为位置找元素(例如选择排序)
若k比较小,而整个数组元素非常多,显然首选选择排序;
若k不处于靠端,则可利用分治的思想, 快排实现过程中第一步,为基准元素找到位置,得到基准元素在整个数组的位置,根据其位置,确定第k个元素在基准元素的哪一端。
为达到目的,若全排所有数据,显然做了很多无用功,所有的排序算法思想,主要有两种思路:1. 为元素找位置(例如快排) 2.为位置找元素(例如选择排序)
若k比较小,而整个数组元素非常多,显然首选选择排序;
若k不处于靠端,则可利用分治的思想, 快排实现过程中第一步,为基准元素找到位置,得到基准元素在整个数组的位置,根据其位置,确定第k个元素在基准元素的哪一端。