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

给人做设计的网站网络营销课程作业

给人做设计的网站,网络营销课程作业,淮安网站建设价位,微信二维码制作小程序1 题目地址 347. 前 K 个高频元素 - 力扣(LeetCode)347. 前 K 个高频元素 - 给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 示例 1:输入: nums [1,1,1,2,2,3], k 2输出: [1,2]示…

1 题目地址

347. 前 K 个高频元素 - 力扣(LeetCode)347. 前 K 个高频元素 - 给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 示例 1:输入: nums = [1,1,1,2,2,3], k = 2输出: [1,2]示例 2:输入: nums = [1], k = 1输出: [1] 提示: * 1 <= nums.length <= 105 * k 的取值范围是 [1, 数组中不相同的元素的个数] * 题目数据保证答案唯一,换句话说,数组中前 k 个高频元素的集合是唯一的 进阶:你所设计算法的时间复杂度 必须 优于 O(n log n) ,其中 n 是数组大小。https://leetcode.cn/problems/top-k-frequent-elements/description/


2 题目说明

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

示例 1:

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

示例 2:

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

提示:

  • 1 <= nums.length <= 105
  • k 的取值范围是 [1, 数组中不相同的元素的个数]
  • 题目数据保证答案唯一,换句话说,数组中前 k 个高频元素的集合是唯一的

进阶:你所设计算法的时间复杂度 必须 优于 O(n log n) ,其中 n 是数组大小。

3 解题思路

 思路:
        1、统计元素出现的概率
        2、对频率排序
        3、找出前K个高频元素
前K个元素可以使用排序算法,但是在这里着重介绍下队列。
优先级队列其实就是一个披着队列外衣的堆,因为优先级队列对外接口只是从队头取元素,从队尾添加元素,再无其他取元素的方式,看起来就是一个队列。
堆是一棵完全二叉树,树中每个结点的值都不小于(或不大于)其左右孩子的值。 如果父亲结点是大于等于左右孩子就是大顶堆,小于等于左右孩子就是小顶堆。

       
4 代码编写

class Solution {public int[] topKFrequent(int[] nums, int k) {Map<Integer, Integer> map = new HashMap<>();for (int i=0; i<nums.length; i++) {int count = map.getOrDefault(nums[i], 0) + 1;map.put(nums[i], count);}// 出现次数按从队头到队尾的顺序是从大到小排,出现次数最多的在队头(相当于大顶堆)PriorityQueue<int[]> queue = new PriorityQueue<>((a, b)->b[1]-a[1]);for (Map.Entry<Integer, Integer> entry : map.entrySet()) {//大顶堆需要对所有元素进行排序queue.add(new int[]{entry.getKey(), entry.getValue()});}int[] ans = new int[k];for (int i = 0; i < k; i++) { //依次从队头弹出k个,就是出现频率前k高的元素ans[i] = queue.poll()[0];}return ans;}
}

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

相关文章:

  • seo关键词大搜长沙seo网站优化公司
  • 设计师兼职网站没广告的视频播放器app
  • 做好网站怎么做app网站检测中心
  • 滕州外贸网站建设武汉做网页推广公司
  • 怎么自己做免费网站篮网目前排名
  • 做冰淇淋生意网站外包公司和劳务派遣的区别
  • 建筑装饰和网站建设哪个好整合营销传播理论
  • 重庆学校网站建设镇江网页设计
  • 网站建设 预付款网络营销优化培训
  • 局域网内建设网站平台推广引流
  • 四平做网站佳业首页刚刚刚刚刚刚刚刚刚刚刚刚刚刚刚
  • 天津 论坛网站制作公司净水器十大品牌
  • 十佳网站网站页面优化方案
  • 做销售网站要多少钱网站管理工具
  • 重庆网站建设网领科技云推广
  • WordPress tag 分类自动优化句子的软件
  • 网站设计与开发怎么做百度竞价广告怎么收费
  • 国外网站兼职做效果图中山百度seo排名公司
  • web前端开发岗位职责站长工具 seo综合查询
  • 网站编程工资多少百度快照是怎么做上去的
  • 合肥公司门户网站制作北京百度seo点击器
  • 给别人做网站会连累自己吗关键词排名优化营销推广
  • 国税部门强化网站建设百度搜索引擎排名
  • 门窗网站制作宣传语投稿网站
  • 网站制作 公开课网络营销sem培训
  • 网页制作视频的网站建设重庆 seo
  • 品牌seo推广天津seo代理商
  • 互联网的发展趋势seo优化师培训
  • 网站开发及推广是怎么回事站长统计网站大全
  • 购物商城模板搜索引擎优化seo应用