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

洪山网站建设域名购买之后怎么做网站

洪山网站建设,域名购买之后怎么做网站,昆明网站设计,中国建筑装饰网平台问题描述 在未排序的数组中找到第k个最大的元素。请注意#xff0c;你需要找的是数组排序后的第k个最大的元素#xff0c;而不是第k个不同的元素。 解题思路 解决这个问题有多种方法#xff0c;下面是几种常见的解题策略#xff1a; 排序后选择: 将数组排序#xff0c…问题描述 在未排序的数组中找到第k个最大的元素。请注意你需要找的是数组排序后的第k个最大的元素而不是第k个不同的元素。 解题思路 解决这个问题有多种方法下面是几种常见的解题策略 排序后选择: 将数组排序然后选择第len(array) - k位置上的元素。优先队列(最小堆): 使用一个大小为k的最小堆遍历数组维护堆的大小为k堆顶即为第k个最大元素。快速选择(QuickSelect): 快速选择算法是快速排序的变体用于找到未排序数组中第k个最大的元素。 代码示例 排序后选择 class Solution:def findKthLargest(self, nums, k):nums.sort()return nums[-k]这种方法的时间复杂度为O(NlogN)空间复杂度为O(1)如果使用的是原地排序算法。 优先队列(最小堆) import heapqclass Solution:def findKthLargest(self, nums, k):heap []for num in nums:heapq.heappush(heap, num)if len(heap) k:heapq.heappop(heap)return heap[0]这种方法的时间复杂度为O(NlogK)空间复杂度为O(K)。 快速选择(QuickSelect) class Solution:def findKthLargest(self, nums, k):k len(nums) - kdef quickselect(l, r):pivot, p nums[r], lfor i in range(l, r):if nums[i] pivot:nums[p], nums[i] nums[i], nums[p]p 1nums[p], nums[r] nums[r], nums[p]if p k: return quickselect(l, p - 1)if p k: return quickselect(p 1, r)return nums[p]return quickselect(0, len(nums) - 1)int partition(vectorint nums,int left,int right) {int key nums[left];while(left right){while(left right and nums[right] key ){right--;}nums[left] nums[right]while(left right and nums[left] key ){left;}nums[right] nums[left]}nums[left] key; return left; }int findk(vectorint nums) {random_shuffle(nums.begin(),nums.end());int n nums.size();int left 0,rihgt n-1;while(True){int p partition(nums,left,right);if(p n-k){return nums[p];}else if(p n-k){right p-1;}else{left p 1;}}return -1; } 快速选择的平均时间复杂度为O(N)最坏情况下的时间复杂度为O(N^2)空间复杂度为O(1)。
http://www.w-s-a.com/news/679854/

相关文章:

  • 北京网站建设公司服务哪家好wap是什么意思?
  • 怎么看公司网站做的好不好哦wordpress页面目录下
  • 做装修业务呢有多少网站平台搭建是什么
  • 潍坊优化网站排名淘宝做网站被骗
  • 建设专业网站的利弊免费logo设计生成器下载
  • 怎么在备案号添加网站网页设计动画网站
  • 网站开发 只要wordpress滑动注册
  • 跨境电商运营主要做什么静态网站如何做优化
  • 南充网站建设网站网站备案安全责任书是谁盖章
  • 怎么将网站设置为首页网站子目录怎么做
  • 做网站交互wordpress信息导出
  • 如何自己做企业网站做外贸登录国外网站
  • 郑州炫彩网站建设网站集约化建设调研报告
  • 2016年两学一做教育网站优良的定制网站建设制作商
  • 自己做网站需要哪些流程网站建设服务费如何做会计分录
  • 莆田建站培训用手机制作游戏的app软件
  • 中山建网站找哪家wordpress采集图片插件
  • 网站首页做后台链接有什么好用的模拟建站软件
  • 宁波有没有开发网站的公司网站上线除了备案还需要什么
  • 网站备案授权wordpress默认主体设置
  • 厦门微信网站广州推广策划公司
  • 集团公司网站开发asp网站怎么运行
  • 广州短视频网站开发东莞市建设信息网
  • 建设网站如果赚钱电脑可以做服务器部署网站吗
  • 网站建设的编程专门做面包和蛋糕的网站
  • 档案网站建设比较分析南京建站公司
  • 哪个网站可以做店招傻瓜式wordpress
  • 网站开发项目经理职责青岛模版网站建设
  • 企业建站哪个好网站建设所用程序
  • 网站建设seo视频定制图片软件