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

嘉善公司网站建设联系人青岛网站建设

嘉善公司网站建设联系人,青岛网站建设,什么网站有做qq群排名的,手机注册企业邮箱优先队列优先队列(priority queue)是计算机科学中的一类抽象数据类型。优先队列中的每个元素都有各自的优先级,优先级最高的元素最先得到服务;优先级相同的元素按照其在优先队列中的顺序得到服务。优先队列通常使用“堆”&#xf…

优先队列

优先队列priority queue)是计算机科学中的一类抽象数据类型。优先队列中的每个元素都有各自的优先级,优先级最高的元素最先得到服务;优先级相同的元素按照其在优先队列中的顺序得到服务。优先队列通常使用“堆”(heap)实现。

优先队列至少需要支持下述操作:

  • 插入带优先级的元素(insert_with_priority)

  • 取出具有最高优先级的元素(pull_highest_priority_element)

  • 查看最高优先级的元素(peek):O(1) 时间复杂度

其它可选的操作:

  • 检查优先级高的一批元素

  • 清空优先队列

  • 批插入一批元素

  • 合并多个优先队列

  • 调整一个元素的优先级

怎样理解优先队列?

举个例子。一家诊所,只有一个医生为病人看病。每个病人依据他们的病情,都会有一个看病的优先级。抽象出一个队列,当病人进入队列时,代表需要等待医生空闲;出队列时,病人接受治疗。一个病人患了感冒,优先级较低,让他在队列中等待,待医生空闲时再为他治疗;接下来,另一位病人前来看病,这位病人伤得不轻,病人头上插着斧头正血流不止,优先级较高,会让他先出队列进行治疗。

在java中的优先队列是一个最小堆,我们可以通过comparator将其变成最大堆

例题

Top K Frequent Elements

Given an integer array nums and an integer k, return the k most frequent elements. You may return the answer in any order.

Example 1:

Input: nums = [1,1,1,2,2,3], k = 2

Output: [1,2]

Example 2:

Input: nums = [1], k = 1

Output: [1]

Constraints:

1 <= nums.length <= 105

-104 <= nums[i] <= 104

k is in the range [1, the number of unique elements in the array].

It is guaranteed that the answer is unique.

Follow up: Your algorithm's time complexity must be better than O(n log n), where n is the array's size.

来源:力扣(LeetCode)

链接:https://leetcode.cn/problems/top-k-frequent-elements

著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

class Solution {public int[] topKFrequent(int[] nums, int k) {//key:num   value:frequencyHashMap<Integer,Integer> map = new HashMap<>();//int[0]:num    int[1]:frequencyPriorityQueue<int[]> pq = new PriorityQueue<>(new Comparator<int[]>() {@Overridepublic int compare(int[] o1, int[] o2) {return o2[1] - o1[1];}});//iterate through nums and insert k-v into mapfor(int num : nums) {map.put(num,map.getOrDefault(num,0) + 1);}for (Map.Entry<Integer, Integer> entry : map.entrySet()) {Integer key = entry.getKey();Integer value = entry.getValue();pq.add(new int[]{key,value});}int[] ans = new int[k];for (int i = 0;i < k;i++) {ans[i] = pq.poll()[0];}return ans;}
}

http://www.dinnco.com/news/35170.html

相关文章:

  • 有没有做丝网的网站呀有哪些搜索引擎网站
  • 怎么做拍卖网站吗品牌推广手段
  • ai素材免费下载网站广州新闻最新消息今天
  • 惠东东莞网站建设app001推广平台
  • 企业网站做留言板有什么优势网站页面分析作业
  • 怎么在印度做网站nba最新消息新闻
  • 搭建什么网站赚钱seo常见优化技术
  • 网站建设 功能需求seo是做什么的
  • 怎么做盗版电影网站吗免费外链生成器
  • 网站适配手机怎么做百度一下你就知道了官网
  • 有多个网页的大网站如何做温州seo外包公司
  • 嘉兴网站专业制作电商平台怎么做
  • 怎么查那家网络公司做的所以网站疫情最新数据消息
  • 我国档案网站建设比较分析百度网址导航
  • 做二手车的网站如何自己创建网站
  • cms网站开发模式无锡seo公司找哪家好
  • 网站一般多长时间在线代理浏览网站
  • 中山市网站建站公司广州网站优化方式
  • 城市中国商业管理后台南宁seo优化公司排名
  • 建设网站 (公司)域名流量查询工具
  • 江西省城乡建设培训中心网站seo优化销售话术
  • 网站设计O2O平台佛山总代理seo规则
  • 域名注册技巧seo挂机赚钱
  • 程序开发外包seo网站优化服务合同
  • 网站开发费用明细电商网站有哪些
  • 国家安全部内设机构seo霸屏软件
  • 17网站一起做网店广州国大什么平台可以推销自己的产品
  • 做100个网站效果长尾词优化外包
  • ps做的网站如何转入dw台州seo排名优化
  • 临夏城乡建设局网站网站优化搜索排名