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

微信网站制作企业wordpress更改站点ip

微信网站制作企业,wordpress更改站点ip,杭州seo 云优化科技,怎么建设一个公司网站215数组中的第K个最大元素 题目描述 给定整数数组 nums 和整数 k#xff0c;请返回数组中第 k 个最大的元素。 请注意#xff0c;你需要找的是数组排序后的第 k 个最大的元素#xff0c;而不是第 k 个不同的元素。 你必须设计并实现时间复杂度为 O(n) 的算法解决此问题。…215数组中的第K个最大元素 题目描述 给定整数数组 nums 和整数 k请返回数组中第 k 个最大的元素。 请注意你需要找的是数组排序后的第 k 个最大的元素而不是第 k 个不同的元素。 你必须设计并实现时间复杂度为 O(n) 的算法解决此问题。 示例 1: 输入: [3,2,1,5,6,4], k 2 输出: 5示例 2: 输入: [3,2,3,1,2,4,5,5,6], k 4 输出: 4提示 1 k nums.length 105-104 nums[i] 104 方法一小顶堆 class Solution {public int findKthLargest(int[] nums, int k) {PriorityQueueInteger pq new PriorityQueue(); // min heapfor (int val : nums) {pq.add(val);if (pq.size() k) {pq.poll();}}return pq.peek();} }在这个代码中我们首先创建一个优先队列pq。然后我们遍历数组nums对于每个元素我们将其添加到队列中。如果队列的大小大于k我们就删除队列中的最小元素。最后我们返回队列的头部元素这就是第k个最大的元素。 这个算法的时间复杂度是O(n log k)因为我们需要对每个元素进行堆操作堆操作的时间复杂度是O(log k)。虽然题目要求时间复杂度为O(n)但是这个算法在实际中的性能已经非常好了因为log k通常远小于n。 方法二快速选择 class Solution {public void swap(int[] nums,int a,int b){int tem nums[a];nums[a] nums[b];nums[b] tem;}public int getIndex(int[] nums,int left,int right){int m (rightleft) / 2 ;int n nums[right];int p left;for(int i left;iright;i){if(nums[i] n){swap(nums,p,i);p;}}swap(nums,p,right);return p;}public int quickSelect(int[] nums,int left,int right,int k){if(right left){return nums[left];}int index getIndex(nums,left,right);if(index k){return nums[index];}else if(index k){return quickSelect(nums,index1,right,k);}else{return quickSelect(nums,left,index-1,k);}}public int findKthLargest(int[] nums, int k) {return quickSelect(nums,0,nums.length-1,nums.length - k);} }快速选择是快速排序的一个优化它在平均情况下的时间复杂度是O(n)。 在这个代码中我们首先使用快速选择算法来找到第k个最大的元素。快速选择算法的基本思想是我们选择一个枢轴元素然后将数组分为两部分一部分是小于枢轴的元素另一部分是大于枢轴的元素。然后我们根据k和枢轴的位置决定是在左边的部分还是右边的部分继续查找。如果k等于枢轴的位置那么枢轴就是我们要找的元素。
http://www.dnsts.com.cn/news/52055.html

相关文章:

  • 推广农村特色产品建设网站方案全球门户中企动力
  • 百度收录了我新网站的2篇文章了wordpress 记账
  • 建设游戏网站需要什么设备wordpress 中文seo
  • 云网站功能html设计网页作业
  • 网站运营有前途吗广东省住房和城乡建设局官网
  • 手机网站域名开头陕西头条新闻
  • 网站注册价格永康市建设局网站为什么打不开
  • 外国扁平化网站哪些网站开业做简单海报
  • 网站建设与维护制度北京平面设计公司名称
  • h5自助建站系统seo推广优化公司
  • 顺德网站制作公司泰安卫生人才网
  • 山东省建设厅网站查wordpress 插件作用
  • 南阳做玉器网站做电影网站许可证
  • 重庆哪里做网站如何选择网站定制公司
  • 如何搭建一个视频网站三蛋空间 wordpress
  • 哪个公司做网站比较好网站建设如何插音乐
  • 福州市台江区网站网页编辑软件edit
  • 云建站淘宝客网站销售方案
  • 网站建站论坛企业建设网站注意事项
  • 潍坊企业网站制作什么网站可以做软件有哪些
  • 公关咨询公司湖南有实力seo优化哪家好
  • 潍坊网站建设培训班知名的wordpress模板
  • 电子商务加盟网站建设新建网站如何做关键词
  • 旅游网站建设的背景微信网站设计尺寸
  • 做ps彩图什么网站好四秒网站建设
  • 网站开发如何共用菜单栏定远建设局网站
  • 手机做网站过程免费企业网站哪个好
  • 江苏同隆建设集团有限公司网站土特产网站模板 织梦
  • 在线建站系统小红书网络推广公司
  • 电商网站建设需要多少钱九江集团网站建设公司