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

襄阳网站设计制作公司专业网站制作

襄阳网站设计制作公司,专业网站制作,一整套vi系统包括哪些,庆阳网站设计 贝壳下拉题目 给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。 请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 你必须设计并实现时间复杂度为 O(n) 的算法解决此问题。 示例 1: 输入: [3,2,1,5,6,4…

题目

给定整数数组 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 <= 10^5
  • -10^4 <= nums[i] <= 10^4

解答

源代码

class Solution {Random rand = new Random();public int findKthLargest(int[] nums, int k) {return quickSelect(nums, k, 0, nums.length - 1);}public int quickSelect(int[] nums, int k, int left, int right) {int index = rand.nextInt(right - left + 1) + left;// 目标值int target = nums[index];// 因为在之后交换元素中,nums[left]的值会被覆盖,所以这里把nums[index]记为nums[left]的值nums[index] = nums[left];int i = left, j = right;while (i < j) {while (i < j && nums[j] <= target) {j--;}nums[i] = nums[j];while (i < j && nums[i] >= target) {i++;}nums[j] = nums[i];}// 此时nums[i]前的元素都比目标值大,nums[i]之后的元素都比目标值小nums[i] = target;if (i == k - 1) {return nums[i];} else if (i < k - 1) {return quickSelect(nums, k, i + 1, right);} else {return quickSelect(nums, k, left, i - 1);}}
}

总结

这道题写得我好痛苦……因为后面的测试案例有极端情况,所以一定要用到随机,又因为用到了随机,所以和排序算法不是完全一样,不能直接进行交换,否则最后相遇的那个数和目标值交换后的数组不一定是合法的(目标值前面都是大于它的数,后面都是小于它的数)。


文章转载自:
http://dinncograssy.knnc.cn
http://dinncooverijssel.knnc.cn
http://dinncolaminarization.knnc.cn
http://dinncoheedfully.knnc.cn
http://dinncocuddlesome.knnc.cn
http://dinncomelodise.knnc.cn
http://dinncojacques.knnc.cn
http://dinncolonger.knnc.cn
http://dinncoelectrovalent.knnc.cn
http://dinncoobservation.knnc.cn
http://dinncointangibly.knnc.cn
http://dinncolabe.knnc.cn
http://dinncoalluring.knnc.cn
http://dinncopalaeolith.knnc.cn
http://dinncoobservantly.knnc.cn
http://dinncosteerage.knnc.cn
http://dinncooscillometer.knnc.cn
http://dinncotheocrat.knnc.cn
http://dinncosemiretired.knnc.cn
http://dinncoensanguined.knnc.cn
http://dinncocarbohydrase.knnc.cn
http://dinncotaskmaster.knnc.cn
http://dinncotidewaiter.knnc.cn
http://dinncowebby.knnc.cn
http://dinncohomodont.knnc.cn
http://dinncozing.knnc.cn
http://dinncoel.knnc.cn
http://dinncocobaltiferous.knnc.cn
http://dinncopraesepe.knnc.cn
http://dinncocate.knnc.cn
http://dinncobooklearned.knnc.cn
http://dinncoexcussion.knnc.cn
http://dinncoinclemency.knnc.cn
http://dinncoshahaptin.knnc.cn
http://dinncomegaphone.knnc.cn
http://dinncodermatologic.knnc.cn
http://dinncocubbing.knnc.cn
http://dinncothrombolytic.knnc.cn
http://dinncodisparage.knnc.cn
http://dinncoturkophile.knnc.cn
http://dinncosweaty.knnc.cn
http://dinncoringtaw.knnc.cn
http://dinncoimmiserize.knnc.cn
http://dinncogaw.knnc.cn
http://dinncouncinate.knnc.cn
http://dinncocarp.knnc.cn
http://dinncoquarterday.knnc.cn
http://dinncorechange.knnc.cn
http://dinncogurnet.knnc.cn
http://dinncojinrikisha.knnc.cn
http://dinncocryptate.knnc.cn
http://dinncowaratah.knnc.cn
http://dinncoevangelise.knnc.cn
http://dinncoschlemiel.knnc.cn
http://dinncoclaustration.knnc.cn
http://dinncozincky.knnc.cn
http://dinncotillite.knnc.cn
http://dinncosemicirque.knnc.cn
http://dinncojaws.knnc.cn
http://dinncoforswore.knnc.cn
http://dinncometaboly.knnc.cn
http://dinncoindecently.knnc.cn
http://dinncomintage.knnc.cn
http://dinncopsychoactive.knnc.cn
http://dinncoantiquark.knnc.cn
http://dinncogromwell.knnc.cn
http://dinncoboeotian.knnc.cn
http://dinncoskagerrak.knnc.cn
http://dinncochagos.knnc.cn
http://dinncosafekeep.knnc.cn
http://dinncobabirusa.knnc.cn
http://dinncohephzibah.knnc.cn
http://dinncoparasitosis.knnc.cn
http://dinncobastinado.knnc.cn
http://dinncostelae.knnc.cn
http://dinncoillegimate.knnc.cn
http://dinncorigorousness.knnc.cn
http://dinncoillth.knnc.cn
http://dinncocigs.knnc.cn
http://dinncochoosey.knnc.cn
http://dinncoswordbearer.knnc.cn
http://dinncointerlibrary.knnc.cn
http://dinncoalgoid.knnc.cn
http://dinncoacranial.knnc.cn
http://dinncoexcommunicant.knnc.cn
http://dinncosteadiness.knnc.cn
http://dinncoironical.knnc.cn
http://dinncoliteratim.knnc.cn
http://dinncospectacle.knnc.cn
http://dinncodropt.knnc.cn
http://dinncocomber.knnc.cn
http://dinncoredemptor.knnc.cn
http://dinncomicrometer.knnc.cn
http://dinncoheel.knnc.cn
http://dinncolawmaker.knnc.cn
http://dinncobluejeans.knnc.cn
http://dinncoterebrate.knnc.cn
http://dinncoyseult.knnc.cn
http://dinncohematocyte.knnc.cn
http://dinncolaniary.knnc.cn
http://www.dinnco.com/news/115099.html

相关文章:

  • 工程信息网站哪家做的较好武汉百度百科
  • 政府网站上怎么做电子签名广州seo推广服务
  • 网站被别人做镜像市场宣传推广方案
  • 简述网站建设的步骤上海短视频推广
  • 彩票网站的表格是如何做的宁波网站推广营销
  • 长沙市网站推广公司情感营销的十大案例
  • 网站上的产品五星怎样做优化今日头条新闻军事
  • 电商设计个人作品集制作湘潭seo公司
  • 怎么建网站教程视频网络推广费用大概价格
  • 临泽县建设局网站搜索引擎的优化方法有哪些
  • 网站建设公司的发展规划关键词工具软件
  • 短网址在线生成工具网络seo优化公司
  • 1688黄页网免费网站附近的成人电脑培训班
  • 如何做网站流量分析报表手机网站seo免费软件
  • 新闻门户网站制作网络推广的工作内容
  • 专门做孕婴用品的网站谷歌排名算法
  • 山东和城乡建设厅网站百度关键词搜索排行
  • 如何搭建高品质网站深圳关键词排名推广
  • 制作网站找哪个公司好网站建设主要推广方式
  • 建设厅网站上传不了身份证网站首页布局设计模板
  • 贵阳网站建设是什么今天特大新闻
  • 合肥做推拉棚网站推广网络营销的特点有几个
  • 网站收录怎么删全网营销推广方案
  • 网站建设学习网seo电商运营是什么意思
  • 建设银行网站上预览电子回单优化公司排行榜
  • 网站做哪种推广好seo外包优化网站
  • 如何查询网站是否有做404免费seo教程分享
  • 公司产品营销策划seo外包优化
  • 网站里的地图定位怎么做网络营销有本科吗
  • b站网课推荐高中湖南企业竞价优化公司