输入n个整数,找出其中最小的K个数

最小的K个数

http://www.nowcoder.com/questionTerminal/6a296eb82cf844ca8539b57c23e6e9bf

没什么想法,直接查找就行了

import java.util.*;
public class Solution {
    public ArrayList<Integer> GetLeastNumbers_Solution(int [] input, int k) {
        ArrayList<Integer> arr = new ArrayList<Integer>();
        if(input==null||input.length==0||k>input.length||k<=0){
            return arr;
        }
        for(int i=0;i<input.length;i++){
            L:
            for(int j=0;j<arr.size();j++){
                if(input[i]<=arr.get(j)){
                    arr.add(j,input[i]);
                    if(arr.size()>k){
                        arr.remove(k);
                    }
                    break L;
                }else if(input[i]>arr.get(arr.size()-1)&&arr.size()<k){
                    arr.add(input[i]);
                    break L;
                }
            }
            if(arr.size()==0){
                arr.add(input[i]);
            }
        }
        return arr;
    }
}
全部评论

相关推荐

饼子吃到撑:当我看到外企的时候,我就知道这大概率可能是真的
点赞 评论 收藏
分享
kaoyu:腾讯基本都没hc了,只有零星捞人的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务