题目:
思路:我直接采用的java自带的数组排序sort方法,该方法的底层思想如下图:
AC代码如下:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int k = in.nextInt();
in.nextLine();
int[] p = new int[n];
for(int i = 0 ; i < n ; i++){
p[i] = in.nextInt();
}
//java自带排序方法
Arrays.sort(p);
//记录最小值,记录第几小
int mink = p[0],cnt = 1;
for(int j = 1 ; j < n ; j++){
if(p[j] > mink){
mink = p[j];
cnt++;
}
//存在第k小的数,跳出循环
if(cnt == k) break;
}
//如果不存在第k小的数
if(cnt < k){
System.out.println("NO RESULT");
}
if(cnt == k) System.out.println(mink);
}
}