《好未来编程题》n个数里最小的k个

来源:互联网 发布:好用的会计软件 编辑:程序博客网 时间:2024/06/08 19:32

题目描述

找出n个数里最小的k个

输入描述:
每个测试输入包含空格分割的n+1个整数,最后一个整数为k值,n
不超过100。

输出描述:
输出n个整数里最小的k个数。升序输出

示例1
输入

3 9 6 8 -10 7 -11 19 30 12 23 5
输出

-11 -10 3 6 7

解析:直接上代码了

import java.util.Arrays;import java.util.Scanner;public class Main {    public static String getMin(int [] arr,int k){        String result="";        Arrays.sort(arr);        if(arr.length<=k){            for(int i:arr){                result+=i+" ";            }        }else {            for(int i=0;i<k;i++){                result+=arr[i]+" ";            }        }        return result.trim();    }    public static void main(String[] args) {        Scanner scanner = new Scanner(System.in);        while (scanner.hasNextLine()){            String s=scanner.nextLine();            String [] str=s.split(" ");            int [] arr= new int[str.length-1];//最后那个数不加参与排序的            for(int i=0;i<str.length-1;i++){                arr[i]=Integer.parseInt(str[i]);            }            System.out.println(getMin(arr,Integer.parseInt(str[str.length-1])));        }    }}
原创粉丝点击