题解 | #输入n个整数,输出其中最小的k个#
输入n个整数,输出其中最小的k个
https://www.nowcoder.com/practice/69ef2267aafd4d52b250a272fd27052c
import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner in =new Scanner(System.in); String str = in.nextLine(); String str1 = in.nextLine(); String[] list1 = str.split(" "); int i = Integer.parseInt(list1[0]); int j = Integer.parseInt(list1[1]); if (i<=j){ System.out.println(str1); }else if (j<=0){ System.out.println(); } else{ String[] list2 = str1.split(" "); int[] list = new int[list2.length]; for (int i1 = 0; i1 < list2.length; i1++) { list[i1]=Integer.parseInt(list2[i1]); } for (int a=0;a<list.length;a++){ int current = list[a]; int minIndex = a; for (int b = a+1;b<list.length;b++){ if (list[b]<current){ current = list[b]; minIndex=b; } } if (minIndex!=a){ int flag = list[a]; list[a] = list[minIndex]; list[minIndex]=flag; } } System.out.print(list[0]); for (int k=1;k<j;k++){ System.out.print(" "+list[k]); } } } }