摘要:
给出一个数组,要求查找出这个数组中按顺序排第K大的数字。思路:利用快速排序的思想,把数组中的元素分治,并计算中间值的位置,如果是K,则这个数就是第K大的数字,如果比K小,那么再次利用快速排序分治中值以后的数据,如果比K大,则排序前面的数字,直到找到K的位置。下面给出C++实现的代码:#include <cstdlib>
#include <iostream> using namespace std; int partition(int data[],int first,int last) //¿ìËÙÅÅ 阅读全文