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

传奇广告查询网站天河做网站开发

传奇广告查询网站,天河做网站开发,公司官网怎么做的,辽宁响应式网站建设哪家好使用最小堆算法来解决这道题目:相当于有一个容量固定为K的教室,只能容纳 K 个人,学生们逐个逐个进入该教室,当教室容量达到K人之后,每次进入一个新的学生后,我们将分数最低的学生(类似本题中的频率最低元素…

在这里插入图片描述

使用最小堆算法来解决这道题目:相当于有一个容量固定为K的教室,只能容纳 K 个人,学生们逐个逐个进入该教室,当教室容量达到K人之后,每次进入一个新的学生后,我们将分数最低的学生(类似本题中的频率最低元素)赶出去,最后所有学生都遍历结束之后,教室里所余的学生就是成绩前K高的学生们。

在这道题目中,最小堆(PriorityQueue)就像是一个只能容纳 K 个学生的教室,每次加入一个新的学生,教室满了就会将成绩最低的学生(即频率最低的元素)移除出去。最终剩下的 K 个学生,就是成绩最高的 K 个学生。

具体步骤如下:

  1. 我们先统计每个元素的出现频率(类似学生的分数)。
  2. 然后我们使用一个容量为 K 的最小堆来维护当前频率最高的 K 个元素。
    • 当堆的大小超过K时,将频率最低的元素移除,这样堆中始终只会保留频率最高的K个元素。
  3. 最后,堆中剩下的元素就是前K个高频元素。

这个方法的复杂度主要取决于建立和维护堆的过程,大概是O(N log K) 的时间复杂度,其中N是数组的长度,K是要返回的高频元素的个数。

class Solution {public int[] topKFrequent(int[] nums, int k) {//首先利用 Hashmap 统计每个数值的频率Map<Integer, Integer> freqMap = new HashMap<>();for(int num : nums) {freqMap.put(num, freqMap.getOrDefault(num, 0) + 1);}//创建最小堆,存储键值对对象,key 代表元素,value 代表对应的频率值. // 比较器 (a, b) -> a.getValue() - b.getValue() 隐式地比较了两个元素的频率 // 如果 a 的值(频率)小于 b,则 a 会排在 b 前面(因为最小堆会将频率最小的元素放在堆顶)PriorityQueue<Map.Entry<Integer, Integer>> minHeap = new PriorityQueue<>(k, (a, b) -> a.getValue() - b.getValue());    //维护一个大小为 k 的最小堆for(Map.Entry<Integer, Integer> entry : freqMap.entrySet()) {// 遍历插入一个新的键值对,而不是元素;键是唯一的,没有重复//由于堆顶元素始终是最小的元素,所以无论当前offer提供的待插入元素的大小与此时堆顶元素的大小如何,都会被插入堆中并自动调整。minHeap.offer(entry);if(minHeap.size() > k) { minHeap.poll(); }}int[] results = new int[k];for(int i = 0; i < k; ++i) {results[i] = minHeap.poll().getKey();}return results;}
}
http://www.yayakq.cn/news/161335/

相关文章:

  • 网站seo快速优化技巧公司注册后怎么做网站
  • 建一个展示的网站要多少钱安徽宿州住房与城乡建设玩网站
  • 中国免费网站服务器主机域名报名网站建设
  • qq音乐的网站建设信息深圳网站开发
  • 怎么做免费的网站成都注册网站公司
  • 个人音乐网站建设南通网站建设总结
  • 如何用云服务器做网站青岛网站公司
  • 文登南海建设局网站wordpress模板 企业
  • 网站代码修改网站策划书的撰写流程
  • 网站空间怎么弄浙江和海建设集团网站
  • 绿叶网站怎么做荆州网站建设价格
  • 杨和网站设计做任务打字赚钱的网站
  • 设计的网站源代码怎么做自己建设网站流程
  • 进一步网站建设做基金哪个网站好
  • 网站后台发布文章莱芜都市网二手
  • 网站自适应手机代码wordpress 公司建站
  • 泉州网站建设qzdzi建电影网站赚钱挣钱吗
  • 免费可商用的素材网站做电子请帖网站有哪些
  • 潮动九州网站建设网络营销工具及其特点
  • 网站建设策划书提纲有趣的网站官网
  • 网站建设与维护中国出版社小说阅读网站开发源码
  • 做移动端网站软件系统优化大师官方下载
  • 网站开发需要的学历wordpress怎么固定导航栏
  • 成都网站建设网络公司各种资源都有的搜索引擎
  • 网站备案 新闻审批号wordpress的登录页面模板
  • 网站开发实战wordpress降低数据库查询时间
  • 网站模版 百度云网站备案 接入商名称
  • 网站seo入门企业网站制作公司盈利
  • 网站优化搜索网站运营一般做那些分析
  • dw可以做网站吗国家林业建设工程协会网站