先用归并算法排好序
void show2(int k) { //k为第几大的元素
int max=r1[r1.length-1]; //从后面找起
for(int i=r1.length-2;i>0;i--) {
if(r1[i]<max) { //找到比上一个小的,k--
max=r1[i];
k--;
}
if(k==1) { //K=1时,就找到了第k大个元素
System.out.println(max);
break;
}
}
if(k!=1) //否则不存在第k大个元素
System.out.println("不存在第"+k+"大的数");
}
求n个元素序列中第k大的元素
猜你喜欢
转载自blog.csdn.net/abc1498880402/article/details/82930568
今日推荐
周排行