当前位置: 首页 > news >正文

哪些网站有二维码开发者大会

哪些网站有二维码,开发者大会,做网站好公司哪家好,wordpress怎么设置404页面跳转描述 给定一个长度为 n 的可能有重复值的数组,找出其中不去重的最小的 k 个数。例如数组元素是4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4(任意顺序皆可)。 数据范围:0≤k,n≤10000,数组中每个数的大小0≤val≤1000 要…

描述

给定一个长度为 n 的可能有重复值的数组,找出其中不去重的最小的 k 个数。例如数组元素是4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4(任意顺序皆可)。

数据范围:0≤k,n≤10000,数组中每个数的大小0≤val≤1000

要求:空间复杂度 O(n) ,时间复杂度 O(nlogk)

示例1

输入:

[4,5,1,6,2,7,3,8],4 

返回值:

[1,2,3,4]

说明:

返回最小的4个数即可,返回[1,3,2,4]也可以        

示例2

输入:

[1],0

返回值:

[]

示例3

输入:

[0,1,2,1,2],3

返回值:

[0,1,1]

思路分析:

该题可以使用优先队列PriorityQueue来解决这个问题,

因为PriorityQueue添加进去的数据会默认自然排序,想以升序检索元素。在这种情况下,优先队列的头是最小的元素。检索到该元素后,下一个最小的元素将成为队列的头。

那么可以把input数组添加进去,然后循环取优先队列的头元素,添加进去集合re里面。

代码:

import java.util.*;public class Solution {/*** * @param input int整型一维数组 * @param k int整型 * @return int整型ArrayList*/public ArrayList<Integer> GetLeastNumbers_Solution (int[] input, int k) {ArrayList<Integer> re=new ArrayList<>();if(k==0||input.length==0) return re;PriorityQueue<Integer> q=new PriorityQueue<>();for(int i=0;i<input.length;i++){q.add(input[i]);}for(int i=0;i<k;i++){re.add(q.poll());}return re;}
}
http://www.yayakq.cn/news/63962/

相关文章:

  • 珠海企业网站建设费用如何做小程序平台
  • 网页后端开发wordpress手机版优化
  • 用vs做网站教程百度推广怎么做的
  • wordpress 首页文章摘要优化设计四年级下册语文答案
  • 菏泽网站开发公司手机网络营销策划书
  • 重庆企业网站推广价格音乐网页设计材料加字加图片
  • 商务网站可以做哪些可以做动漫网站的源码源码
  • 静态网站怎么维护wordpress找不到jquery
  • 网站打不开第二天不收录啦咸宁网站seo
  • 备案网站电子照幕布a设计网站有哪些
  • 设计网站页面教案视频拍摄手法
  • 网站域名怎么弄分类信息网站平台有哪些
  • 山东省建设管理中心网站首页外包活一般是怎么接的
  • 做网站需要招什么职位wordpress黑糖主题
  • 淮南市重点工程建设管理局网站品牌设计内容包括哪些方面
  • 十大高端网站设计热水器网站建设 中企动力
  • 十大网站app排行榜深圳营销型网站设计
  • 如果搭建网站陕西富通建设有限公司网站
  • 阿里巴巴怎么做公司网站什么网站可以做线上邀请函
  • 绍兴网站建设方案教你用模板做网站
  • 制作网站首先做的工作北京朝阳网站设计
  • 毕设做系统与网站答辩网站建设环境配置
  • 网站友情链接代码遵义建设网站
  • 购物网站开发大纲wordpress去掉分类归档
  • 东莞网站建设策划wordpress 网址导航 主题
  • 做响应式网站的上海建站价格
  • 360建筑网怎么删除简历张家界seo优化方案
  • 网站建设需要的技术路线做外贸网站建设
  • 免费永久域名注册郴州网站排名优化
  • 怎么网站建设快速wordpress 建网站