给定一个非空的整数数组,返回其中出现频率前 高的元素。

示例 1:

输入: nums = [1,1,1,2,2,3], k = 2
输出: [1,2]

示例 2:

输入: nums = [1], k = 1
输出: [1]

提示:

  • 你可以假设给定的 总是合理的,且 1 ≤ k ≤ 数组中不相同的元素的个数。
  • 你的算法的时间复杂度必须优于 O(n log n) , 是数组的大小。
  • 题目数据保证答案唯一,换句话说,数组中前 k 个高频元素的集合是唯一的。
  • 你可以按任意顺序返回答案。

哈希表

统计nums中每个数字出现的次数,然后按照次数进行排序,出现次数最多的前k个即为答案。

Code

 def topKFrequent(self, nums: List[int], k: int) -> List[int]:count, ans = {}, []for num in nums:count[num] = count[num] + 1 if count.get(num, None) else 1temp = sorted(count.items(), key=lambda x: x[1], reverse=True)return [temp[i][0] for i in range(k)]

347. Top K Frequent Elements 前 K 个高频元素相关推荐

  1. 【LeetCode 剑指offer刷题】查找与排序题12:Top K Frequent Elements

    [LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) Top K Frequent Elements Given a non-empty array of integer ...

  2. 0206.BFPRT在一大堆数中求其前k大或前k小的问题,简称TOP-K问题(左神算法基础班源码)

    package basic_class_02;/*** * 在一大堆数中求其前k大或前k小的问题,简称TOP-K问题.* 而目前解决TOP-K问题最有效的算法即是BFPRT算法**/ public c ...

  3. leetcode 347. Top K Frequent Elements | 347. 前 K 个高频元素(大根堆)

    题目 https://leetcode.com/problems/top-k-frequent-elements/ 题解 参考:leetcode 215. Kth Largest Element in ...

  4. 力扣347:前k个高频元素---leetcode347:Top K Frequent Elements

    leetcode347题目链接:https://leetcode.cn/problems/top-k-frequent-elements 目录 一.题目描述 二.思路 1.什么是优先级队列呢? 2.什 ...

  5. [leetcode]347. Top K Frequent Elements

    Given a non-empty array of integers, return the k most frequent elements. For example, Given [1,1,1, ...

  6. Leetcode - 347. Top K Frequent Elements(堆排序)

    Given a non-empty array of integers, return the k most frequent elements. Example 1: Input: nums = [ ...

  7. [swift] LeetCode 347. Top K Frequent Elements

    Given a non-empty array of integers, return the k most frequent elements. For example, Given [1,1,1, ...

  8. Leetcode: Top K Frequent Elements

    Given a non-empty array of integers, return the k most frequent elements.For example, Given [1,1,1,2 ...

  9. leetcode347 - Top K Frequent Elements - medium

    Given a non-empty array of integers, return the k most frequent elements. Example 1: Input: nums = [ ...

最新文章

  1. 设备树之GPIO和中断实例
  2. stl源码剖析_《STL源码剖析》学习笔记——空间配置器
  3. 编程学习--从入门到放弃
  4. 怎么通过id渲染页面_完全理解Vue的渲染watcher、computed和user watcher
  5. java高级工程师线程_java高级工程师--------多线程并发
  6. php的冒泡算法,PHP实现冒泡算法
  7. 基于Spring Security的认证授权_WEB授权_Spring Security OAuth2.0认证授权---springcloud工作笔记132
  8. 实用防火墙(Iptables)脚本分析
  9. Win11无法识别Wmic怎么办?Win11识别不了Wmic的解决方法
  10. 在HTML中标记tel是什么意思,'tel'属性在AEM 6.1的经典UI中富文本编辑器中的锚标记的href中不起作用...
  11. 阿里巴巴16字真言 | 管理者的基本要求是什么?
  12. Atitit.分布式远程调用  rpc  rmi  CORBA的关系
  13. 极客大学产品经理训练营 产品思维和产品意识(上) 第3课总结
  14. 将Python对象转换成字典
  15. 太空帝国5(Space Empires V SE5)攻略
  16. 计算机如何连接iphone,iphone怎么连接到电脑的方法详解【图文】
  17. sqlserver战德臣_SQLSERVER补位示例
  18. 用python画写轮眼_创意scratch编程课:火影经典忍术,宇智波佐助的写轮眼!
  19. 给时光以生命,而不是给生命以时光--2018年终总结
  20. CentOS7安装twisted报错: src/twisted/test/raiser.c:4:20: fatal error: Python.h : No such file or direc

热门文章

  1. JVM六大垃圾回收器特点及区别
  2. Spring之使用外部属性文件
  3. 自己平时会使用的一个自定义前端结构
  4. flask开发restful api系列(5)-短信验证码
  5. 3.13. Notepad++中Windows,Unix,Mac三种格式之间的转换
  6. Xcode6 itunes完美打包api 方法
  7. python的return语句求两数之和_Python的return语句可以返回多个不同类型的值
  8. mysql union group by_Mysql UNION和GROUP BY
  9. JAVASCRIPT发展历程
  10. Java黑皮书课后题第10章:*10.1(Time类)设计一个名为Time的类。编写一个测试程序,创建两个Time对象(使用new Time()和new Time(555550000))