【题目】 输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。
*【思路】排序,去除k后的数。

 package com.exe11.offer;
import java.util.ArrayList;
import java.util.Collections;
/**
*【题目】 输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。
*【思路】排序,去除k后的数。
* @author WGS
*
*/
public class GetLeastKNumbers {
public ArrayList<Integer> getLeastKNumber(int[] nums,int K){
ArrayList<Integer> list=new ArrayList<>();
if(nums==null ||nums.length<=0 ||
K<1 || K>nums.length)
return list; for(int i=0;i<nums.length;i++){
list.add(nums[i]);
}
//2 排序
Collections.sort(list);
//3 去除K后数
while(list.size()>K){
list.remove(K);//一直删除第K个位置的数,直至list大小>K
}
return list; } public static void main(String[] args) {
GetLeastKNumbers g=new GetLeastKNumbers();
int[] nums=new int[]{4,5,1,6,2,7,3,8};
ArrayList<Integer> list=g.getLeastKNumber(nums, 4);
for (Integer integer : list) {
System.out.println(integer);
}
}
}

最新文章

  1. Ubuntu安装Gnome3
  2. PHP用curl伪造IP和来源
  3. 【RabbitMQ】HelloWorld
  4. [linux] 默认权限修改(umask)
  5. Sql Server按树形结构排序查询表记录
  6. [saiku] 集成单点登录
  7. 如何区分JS中的this?!
  8. Http请求和响应应用
  9. RT: TCP REUSEADDR or REUSEPORT
  10. [SHOI 2011]双倍回文
  11. 【English】20190429
  12. 在Linux(Centos7)上使用Docker运行.NetCore
  13. 手机QQ公众号亿级消息实时群发架构
  14. 【读书笔记】segment routing mpls数据平面-2
  15. 解释代码((n &amp; (n-1))== 0)的含义
  16. prev_permutation(a+1,a+n+1)
  17. 4412 uboot上手
  18. 「loj3058」「hnoi2019」白兔之舞
  19. JAVA list集合两种去重方法
  20. urllib2使用初探

热门文章

  1. 如何让你的Apache支持include文件解析和支持shtml的相关配置
  2. 十一 SOA 与 ESB
  3. web app 的技术参考 -- 来自 【百度移动建站指南】
  4. MVC&amp;WebForm对照学习:文件上传(以图片为例)
  5. HOG特征提取分析(转)
  6. map遍历的四种方法
  7. C++ Primer:第八章:IO库(续)
  8. c 函数及指针学习 6
  9. Apache配置日志功能
  10. apache日志切割