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

南京 网站备案公司域名查询官网

南京 网站备案,公司域名查询官网,公司建设网站首页,做民宿怎么登录网站1.数组中的第K个最大元素 方法1:排序 # 方法1:排序 def FindK(nums, k):nums sorted(nums, reverseTrue)return nums[k-1] 时间复杂度O(nlogn) (排序) 方法2:最小堆(用最小堆维护最大的K个数&#xff…

1.数组中的第K个最大元素

方法1:排序

# 方法1:排序
def FindK(nums, k):nums = sorted(nums, reverse=True)return nums[k-1]

时间复杂度O(nlogn) (排序)

方法2:最小堆(用最小堆维护最大的K个数)

# 方法2:堆(用最小堆维护最大的K个数)
import heapq
def FindK(nums, k):heap = []for num in nums:heapq.heappush(heap, num)if len(heap) > k:heapq.heappop(heap)return heap[0]

时间复杂度O(nlogk)  (遍历n,堆插入和弹出是logk)

方法3:快速选择

# 方法3:快速选择
def FindK(nums, k):# 分区,并确定基准最终位置(左边必然比pos大,右边必然比pos小)def partition(left, right):pivot, pos = right, left                            # 设置基准位置 和 基准的最终位置for i in range(left, right):if nums[i] >= nums[pivot]:                      # 和基准对比,大的从前面开始放nums[i], nums[pos] = nums[pos], nums[i]     # 交换大值,放到前面pos += 1nums[right], nums[pos] = nums[pos], nums[right]     # 放基准元素到它的最终位置return posleft, right = 0, len(nums) - 1while True:pos = partition(left, right)    # 分区if pos == (k-1):                # 对比当前位置 和 目标位置(k-1)return nums[pos]elif pos > (k-1):right = pos - 1else:left = pos + 1

时间复杂度:平均O(n)  ,最坏O(n^2)

2.前 K 个高频元素

问题:给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。

方法1:哈希表

# 方法1:哈希表 + 排序
import collections
def TopKFreq(nums, k):hash = collections.defaultdict(int)# 统计频率for num in nums:hash[num] += 1freq = sorted(hash.items(), key=lambda x:x[1], reverse=True)    # 直接根据频率对哈希表排序return [num[0] for num in freq[:k]]

方法2:最小堆

# 方法2:最小堆
import heapq
import collections
def TopKFreq(nums, k):hash = collections.defaultdict(int)heap = []# 统计频率for num in nums:hash[num] += 1for num, freq in hash.items():heapq.heappush(heap, [freq, num])       # 最小堆(对首个元素freq筛选)if len(heap) > k:heapq.heappop(heap)return [num[1] for num in heap]

http://www.dtcms.com/wzjs/139086.html

相关文章:

  • 电子商务网站建设技术规范百度网盘首页
  • 北京上海网站建设公司搜索引擎营销分析
  • 银川网站建设一条龙服务谷歌商店安卓版下载
  • 网络公司网站推广0元入驻的电商平台
  • wp网站做企业站好不好全国疫情实时动态
  • 龙岗网站建设设计服务近三天新闻50字左右
  • ftp文件导入wordpress前端seo怎么优化
  • 如何做类似于淘宝的网站网站seo推广营销
  • 郑州网站建设老牌公司百度热门排行榜
  • 网站设计建设有限公司网络推广求职招聘交流群
  • 交互设计网站案例百度搜索词热度查询
  • 品牌网站建设维护怎样制作网页设计
  • 国外优惠卷网站如何做免费seo营销优化软件下载
  • 北京的网站建设公司seo站内优化包括
  • 移动网站建设机构seo诊断优化专家
  • 文登市城乡建设局网站软文营销方法有哪些
  • 交通局网站建设方案策划书百度seo引流怎么做
  • 群晖nas可以做网站服务器网站设计报价方案
  • 外贸网站如何推广出去百度站长工具网站
  • 公司门户网站制作网站制作方案
  • 用java做网站好吗最近时事新闻热点事件
  • 电商商城网站建设建站系统软件有哪些
  • 东莞网站建设地点优化自己的网站怎么做seo
  • 免费域名注册2023seo优化常识
  • 高端网站设计公司如何设计网站福州整站优化
  • 网络销售面试问题有哪些汕头seo建站
  • 网站建设好的公司站长工具中文
  • 沈阳网站建设培训搜索引擎优化seo应用
  • 做旅游宣传图的网站有哪些2022千锋教育培训收费一览表
  • wordpress文章内模板优化设计全部答案