题目:

思路:我直接采用的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);
}
}
文章介绍了一种使用Java内置的`Arrays.sort()`方法来对整数数组进行排序,然后通过遍历找到数组中的第k小的数的思路和实现代码。如果不存在第k小的数,则输出NORESULT。
1057

被折叠的 条评论
为什么被折叠?



