LeetCode刷题---哈希表---347
前 K 个高频元素
347. 前 K 个高频元素 - 力扣(LeetCode)
题目:
给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。
示例 1:
输入: nums = [1,1,1,2,2,3], k = 2 输出: [1,2]
示例 2:
输入: nums = [1], k = 1 输出: [1]
提示:
1 <= nums.length <= 105k的取值范围是[1, 数组中不相同的元素的个数]- 题目数据保证答案唯一,换句话说,数组中前
k个高频元素的集合是唯一的
自己的思路和代码
思路:
其实很简单的一道题。无非就是设置两个哈希表,第一个哈希表(不允许重复)记录每个元素已经每一个元素出现的次数。第二个哈希表(允许重复),将第一个哈希表的第一维和第二维进行对调。按序输出就可以了。
代码:
class Solution {
public:vector<int> topKFrequent(vector<int>& nums, int k) {unordered_map<int, int> table;multimap<int, int> standard;vector<int> result;for(int i=0; i<nums.size(); i++) {table[nums[i]]++;}for(auto itr=table.begin(); itr!=table.end(); itr++) {standard.insert({itr->second, itr->first});}int sum = 1;for(auto itr=standard.rbegin(); itr!=standard.rend(); itr++) {if(sum<=k) result.push_back(itr->second);sum++;//printf("%d %d\n", itr->first, itr->second);}return result;}
};
相关文章:
LeetCode刷题---哈希表---347
前 K 个高频元素 347. 前 K 个高频元素 - 力扣(LeetCode) 题目: 给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 示例 1: 输入: nums [1,1,1,2,2,3], k 2 输出: [1…...
LED灯闪烁实验:实验介绍
文章目录 1 实验目标2 工具链2.1 硬件2.2 软件 3 实验流程 1 实验目标 本实验结合Matlab/Simulink工具链和STM工具链,实现STM32开发板上的LED灯闪烁功能。 2 工具链 2.1 硬件 STM32F103C8T6最小系统板 STM32F103C8T6最小系统板是基于STM32F103C8T6微控制器的开发…...
论文笔记(七十二)Reward Centering(一)
Reward Centering(一) 文章概括摘要1 奖励中心化理论 文章概括 引用: article{naik2024reward,title{Reward Centering},author{Naik, Abhishek and Wan, Yi and Tomar, Manan and Sutton, Richard S},journal{arXiv preprint arXiv:2405.0…...
C#之上位机开发---------C#通信库及WPF的简单实践
〇、上位机,分层架构 界面层 要实现的功能: 展示数据 获取数据 发送数据 数据层 要实现的功能: 转换数据 打包数据 存取数据 通信层 要实现的功能: 打开连接 关闭连接 读取数据 写入数据 实体类 作用: 封装数据…...
使用 pjsua2 开发呼叫机器人,批量拨打号码并播放固定音频
如何使用 pjsua2 开发呼叫机器人,批量拨打号码并播放固定音频 声明 该播客仅提供实现思路,并非实际的方案记录,不要盲目照搬。 pjsua2库的安装会有较多问题,请参考本人之前的播客进行安装 pjsua2。 pjsua2 库具体的 api 说明请参考开源库内的 范例代码。 引言 在今天的…...
从函数到神经网络
所有一切的前提是,你要相信这个世界上的所有逻辑和知识,都可以用一个函数来表示。Functions describe the world ! 比如输入物体的质量和加速度,根据牛顿第二定律,就可以得到物体施加的力,这就是人工智能早期的思路&am…...
用自定义注解实现Excel数据导入中的枚举值校验
使用自定义注解实现Excel数据导入中的枚举值校验 在实际开发中,我们经常需要从Excel文件中导入数据,并且这些数据需要符合一定的规则,比如某些字段的值必须是预定义的枚举值。本文将介绍如何使用自定义注解来实现这一功能,以提高…...
网络安全技术pat实验 网络安全 实验
🍅 点击文末小卡片 ,免费获取网络安全全套资料,资料在手,涨薪更快 网络安全实验3 前言Kali 常用指令工具教程 ettercap 基本使用 一、口令破解 John the ripper 破解 linux 密码l0phtcrack7 破解 windows 密码John 破解 zip 压…...
4、IP查找工具-Angry IP Scanner
在前序文章中,提到了多种IP查找方法,可能回存在不同场景需要使用不同的查找命令,有些不容易记忆,本文将介绍一个比较优秀的IP查找工具,可以应用在连接树莓派或查找IP的其他场景中。供大家参考。 Angry IP Scanner下载…...
1018. 锤子剪刀布 (20)-PAT乙级真题
题目来源: PTA | 程序设计类实验辅助教学平台 代码实现(代码一): 这个版本是自己写的;(很好理解,但定义了很多变量),有部分样例测试不通过 #include <iostream>…...
MyBatis 中 SqlMapConfig 配置文件详解
精心整理了最新的面试资料,有需要的可以自行获取 点击前往百度网盘获取 点击前往夸克网盘获取 configuration:包裹所有配置标签,是整个配置文件的顶级标签。 properties:属性,该标签可以引入外部配置的属性ÿ…...
复杂项目中的多级WBS应该如何分解?
如果你曾经参与过一个复杂的项目,或许就会感受到: 任务繁杂、责任不清、进度难追踪, 真的是每一位项目经理的噩梦。 而这一切的根源,往往就是缺少一个清晰、有效的任务分解结构—— 没有把庞大、复杂的工作拆解得足够明确&…...
红蓝对抗之常见网络安全事件研判、了解网络安全设备、Webshell入侵检测
文章目录 研判(入侵检测) 设备 经典网络云网络 异常HTTP请求Webshell分析 Webshell 的分类Webshell 的检测 主机层面流量层面 附录 常见端口漏洞…...
使用 CodeMirror 6 实现插入文本及替换选中文本功能
本文将通过具体的代码示例,详细解释如何在 Vue3 中使用 CodeMirror 6 实现文本插入功能,包括在光标位置插入文本和选中文本插入文本的代码示例,以及这两种插入方式的区别。 1. 只能在光标位置插入文本 1.1 代码示例 const insertTemplate …...
Huatuo热更新--如何使用
在安装完huatuo热更新插件后就要开始学习如何使用了。 1.创建主框渐Main 新建文件夹Main(可自定义),然后按下图创建文件,注意名称与文件夹名称保持一致 然后新建场景(Init场景),添加3个空物体…...
Flask实现高效日志记录模块
目录 一. 简介: 1. 为什么需要请求日志 二. 日志模块组成 1. 对应日志表创建(包含日志记录的关键字段) 2. 编写日志记录静态方法 3. 在Flask中捕获请求日志 4. 捕获异常并记录错误日志 5. 编写日志接口数据展示 6. 写入数据展…...
scroll、offset、client三大家族和getBoundingClientRect方法
scroll、offset、client三大家族和getBoundingClientRect方法 1.offset(只能读,不能修改)2.client(只能读,不能修改)3.scroll滚动家族4.getBoundingClientRect方法 1.offset(只能读,不能修改) offsetParent:离当前元素最近的有定位的祖先元素…...
JWT 令牌
目录 一、JWT 1、什么是JWT 2、JWT的组成 3、JJWT签发与验证token 1、创建token 2、解析token 3、设置过期时间 4、自定义claims 前言: 在现代Web应用和微服务架构中,用户身份验证和信息安全传输是核心问题。JSON Web Token(J…...
Python基于Flask的豆瓣Top250电影数据可视化分析与评分预测系统(附源码,技术说明)
博主介绍:✌IT徐师兄、7年大厂程序员经历。全网粉丝15W、csdn博客专家、掘金/华为云//InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇dz…...
JavaScript数组-遍历数组
在JavaScript中,数组是一种非常常用的数据结构,用于存储一系列有序的数据项。无论是处理简单的列表还是复杂的数据集合,遍历数组都是我们经常需要执行的操作之一。本文将详细介绍几种常见的遍历数组的方法,并讨论它们各自的优缺点…...
【DOA估计】基于均匀圆阵相干信号二维doa估计Matlab实现
✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…...
【技术视角】从0到1拆解机乎AI:AI社交平台的技术架构与产品设计
前言最近在研究AI社交赛道,发现了一个有意思的产品——机乎AI。作为国内头部的AI社交平台,它的架构设计和产品逻辑有不少值得学习的地方。今天从技术视角做一个深度拆解,聊聊它的核心机制和技术实现思路。一、产品定位与技术选型机乎AI的产品…...
从零开始学iOS开发(第三十二篇):SwiftUI 拖拽交互 —— 构建流畅的拖放体验
欢迎来到本系列教程的第三十二篇。在前三十一篇中,你已经学习了从Swift基础到数据可视化的全方位iOS开发技能。现在,你能够构建出功能完善、数据清晰的应用了。但是,如何让用户与应用进行更自然的交互?如何让用户通过拖拽来重新排…...
WorkshopDL终极指南:无需Steam客户端免费下载创意工坊模组的完整解决方案
WorkshopDL终极指南:无需Steam客户端免费下载创意工坊模组的完整解决方案 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL 还在为跨平台游戏无法使用Steam创意工坊模…...
生图新王GPT Image 2正式发布!彻底告别中文乱码,附无魔法国内稳定渠道
AI绘图圈又迎来了史诗级大地震!出乎所有人意料,OpenAI这次连发布会都没开,GPT-Image-2 就已经全量开放测试了。 目前,所有用户均可免费体验,但无论是免费用户还是付费用户,都会面临严格的额度限制。免费用…...
告别调参烦恼:在YOLOv8中一键集成无参SimAM注意力(保姆级教程)
YOLOv8性能跃迁:无参SimAM注意力模块的零成本升级指南 在目标检测领域,YOLO系列一直以速度和精度的完美平衡著称。但当模型性能遇到瓶颈时,传统注意力机制如CBAM、SE往往需要繁琐的超参数调整,这成为许多开发者的痛点。本文将揭示…...
别再硬编码了!用状态机重构你的STM32F4循迹小车代码(附HAL库例程)
用状态机重构STM32F4循迹小车:告别硬编码的工程化实践 在嵌入式开发中,处理多传感器输入和控制逻辑时,新手常陷入if-else或switch-case的硬编码陷阱。我曾见过一个典型的五路循迹小车项目,原始代码用超过20个条件判断处理传感器组…...
3分钟快速上手!GBFR Logs:碧蓝幻想Relink终极战斗数据分析工具
3分钟快速上手!GBFR Logs:碧蓝幻想Relink终极战斗数据分析工具 【免费下载链接】gbfr-logs GBFR Logs lets you track damage statistics with a nice overlay DPS meter for Granblue Fantasy: Relink. 项目地址: https://gitcode.com/gh_mirrors/gb/…...
M3U8不只是个播放列表?深入它的‘隐藏玩法’:搭建私人影音库、自动化追剧与跨设备同步
M3U8不只是个播放列表?深入它的‘隐藏玩法’:搭建私人影音库、自动化追剧与跨设备同步 当你第一次接触M3U8文件时,可能只把它当作一个简单的播放列表格式。但在这个流媒体盛行的时代,M3U8实际上可以成为构建个人媒体生态系统的核…...
给你的Windows 11来一次“数字瘦身“:告别臃肿,重获清爽体验
给你的Windows 11来一次"数字瘦身":告别臃肿,重获清爽体验 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other ch…...
