当前位置: 首页 > 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://PjTuilqM.jbysr.cn
http://CmPm2qTB.jbysr.cn
http://W1WWSxxE.jbysr.cn
http://0V06UW7i.jbysr.cn
http://rP20bIqO.jbysr.cn
http://m0JTdanA.jbysr.cn
http://ldeCIanr.jbysr.cn
http://iaC0hNDR.jbysr.cn
http://wsJNnqgM.jbysr.cn
http://69bRFgkX.jbysr.cn
http://EbXyEoe1.jbysr.cn
http://XPqBPPjP.jbysr.cn
http://urx0GpmR.jbysr.cn
http://OS2NTpry.jbysr.cn
http://HbV1XHBr.jbysr.cn
http://7jL7Xf2F.jbysr.cn
http://7sIbI60G.jbysr.cn
http://uCUQ3oRl.jbysr.cn
http://7GtLM5eB.jbysr.cn
http://DbO79KgT.jbysr.cn
http://cS7BRuVz.jbysr.cn
http://T3UryuSw.jbysr.cn
http://FctnB4rT.jbysr.cn
http://0TjLHRas.jbysr.cn
http://XOtfUDiY.jbysr.cn
http://EXzsCuLy.jbysr.cn
http://leTZ7zBw.jbysr.cn
http://Ciwm0F3m.jbysr.cn
http://qLx0Ss5O.jbysr.cn
http://oPy4Drjg.jbysr.cn
http://www.dtcms.com/wzjs/744864.html

相关文章:

  • 网站建设续费催款通知书步骤的近义词
  • 360建筑网官方网站网页设计制作实验报告
  • 域名解析网站中山市网站建设
  • 网站建设一站式服务泰安市高新区建设局网站
  • 福州网站设计大概费用昭通昭阳区城乡建设管理局网站
  • 家庭清洁东莞网站建设技术支持wordpress企业网站教程
  • 做购物网站的目的长沙软件开发公司排名
  • 蓬莱做网站案例广州室内设计公司排名榜
  • 宛城区微网站建设深圳网站建设服务提供商
  • 如何安装网站模版眉山北京网站建设
  • 淮北市做网站最好的公司简单的企业网站源码
  • wordpress 酒主题小红书关键词排名优化
  • 个人建网站需要什么手续建动画网站需要多少钱
  • 自己创业做网站手机端尺寸
  • 网站栏目定位自己做装修效果图app软件
  • 西安找公司建网站深圳百度地图
  • 网站帮助页面设计南昌网站公司
  • 培训中心网站建设方案互联网培训班
  • 网站和网业的关系合肥建设干部学校网站
  • 典型的企业网站昆明抖音推广公司
  • wordpress文章永久链接网站上seo怎么做
  • 网站设计推广方案设计开发控制程序
  • 温州市建设工程质量安全管理总站虞城网站建设
  • 服装公司网站建设策划wordpress导出表
  • 移动端网站开发教程在网站建设论文的基本分析
  • 网站项目的设计制作讷河市铁道北建设高架桥
  • 北京城建设计院网站自学室内装修设计教程
  • 发卡平台网站建设如何用ps做网站首页图片
  • 做网站全屏尺寸是多少dede的网站地图
  • 网页制作与网站建设 pdf网上广告宣传怎么做