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

北京网站建设网站改版的费用网站 建设

北京网站建设网站改版的费用,网站 建设,闵行网站建设公司纸,wordpress 开启gzip给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。 请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 输入: [3,2,1,5,6,4] 和 k 2 输出: 5提到数组中最大元素,我们往往想到就是先给数组…

给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。

请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。

输入: [3,2,1,5,6,4] 和 k = 2
输出: 5

       提到数组中最大元素,我们往往想到就是先给数组进行排序,然后取最大值,现在我们按照这个思路写一写代码

  • 首先判断入参是否合法
f (nums == null || nums.length == 0) {return 0;}
  • 然后对数组进行排序
Arrays.sort(nums);//默认排序方法时双基准快排,效率较高
  • 因为我们取的是第k个最大的元素

        因为数组的长度是6,而k是2,我们所需要求的值的索引刚好是4,所以我们可以得出我们所需要推出的值是nums.length-k(在做题的过程中,如果需要确定关系式的这种情况,个人建议还是举出例子,然后亲自推导比较好一点)

 return nums[nums.length  - k];

       接下来,提到最大值,大家还能想到什么方法?是不是有种数据结构,特能自动的为我们进行数值的排序,不错,就是优先队列 ,我们可以先将数组中的元素都往优先队列中塞进去,然后poll k次就是我们所需要的值,我们直接上代码

   public int findKthLargest(int[] nums, int k) {if(nums==null||nums.length==0){return 0;}//对比较器进行重写,从大到小,因为PriorityQueue的默认排序时升序排序PriorityQueue<Integer> queue=new PriorityQueue<>((a,b)->{return b -a;});for(int num:nums){queue.offer(num);}int res=0;while(k>0){res=queue.poll();k--;}return res;}

http://www.yayakq.cn/news/114153/

相关文章:

  • 购买网站做网页游戏北京网站开发工程师
  • 张家港网站推广企业网站制作收费
  • 网站o2owordpress4.8.3中文
  • 常州市新北区建设局网站xml网站模板
  • 有的网站为什么打不开怎么回事网站建设公司有哪些内容
  • 网站建设云尚网络做膜结构那个网站好
  • 微转app是用网站做的吗南宁seo优化公司排名
  • 手机号码网站建设开发公司五证包括什么
  • 河南濮阳网站建设安徽网页设计
  • 网站seo关键词上海的设计网站
  • 建设银行mylove网站产品网站怎么做超链接
  • 好的界面建筑网站网站网上商城建设
  • 酒水销售网站网络营销心得体会
  • 网站建设公司的市场营销方案模板wordpress用的什么前端
  • 网站制作素材代码潍坊潍微贷是哪家网站建设的
  • 平面设计师兼职网站企业电子商务的网站的建设方式
  • 贵阳网站建设公司哪个好抖音小程序怎么删除
  • 如何建一个企业网站企业网站制作教程
  • 成都手机网站设计汕头网站网站建设
  • 济南网站seo 优帮云黄埔做网站
  • 网站开发公司业务湛江模板建站哪家好
  • 做推广优化的网站有哪些内容网站ppt怎么做
  • 网站制作案例长春手机模板建站
  • 服装 产品展示网站模板wordpress与微信教程 pdf
  • 青岛网站定制开发网站建设热门吗
  • 网站建设与管理软件wordpress 纯静态插件
  • 四川网站推广财务管理做的好的门户网站
  • 石家庄网站建设模板服务做1个响应式设计网站好
  • 三盛都会城网站 html5莱芜网站seo
  • 商标 做网站 是几类网站制作详细流程