栈与队列 Leetcode 347 前k个高频元素

devtools/2024/9/22 22:59:15/

栈与队列 Leetcode 347 前k个高频元素

Leetcode 347

灵活运用C++库函数,使用匿名函数排序,sort可以替换为快排实现(面试感觉可能会手撕,机考直接使用sort)

class Solution {
public:vector<int> topKFrequent(vector<int>& nums, int k) {map<int, int> num_f;for(int i = 0; i < nums.size(); i++){num_f[nums[i]]++;}vector<pair<int, int>> num_f_vec;map<int, int>::iterator it;for(it = num_f.begin(); it != num_f.end(); it++){// push_back()是创建对象后在复制到vector末尾,而emplace_back是就地构建对象没有复制和移动的操作,提高复杂对象到vector的性能num_f_vec.emplace_back(it->first, it->second);}sort(num_f_vec.begin(), num_f_vec.end(), [](pair<int, int>& a, pair<int, int>& b){return a.second > b.second;});vector<int> res;for(int i = 0; i < k; i++){res.push_back(num_f_vec[i].first);}return res;}
};

http://www.ppmy.cn/devtools/55658.html

相关文章

啥移动硬盘格式能更好兼容Windows和Mac系统 NTFS格式苹果电脑不能修改 paragon ntfs for mac激活码

对于同时使用Windows和Mac操作系统的用户而言&#xff0c;选择一个既能确保数据互通又能满足大容量存储需求的移动硬盘格式尤为重要。下面我们来看看啥移动硬盘格式能更好兼容Windows和Mac系统&#xff0c;NTFS格式苹果电脑不能修改的相关内容。 一、啥移动硬盘格式能更好兼容…

从零开始做题:修猫

修猫 1 题目 2 解题 2.1 使用Stegslove分析图片 (base) ┌──(holyeyes㉿kali2023)-[~/Misc/tool-misc] └─$ java -jar Stegsolve.jar 2.2 analyse -frame browser 2.3 得到flag DASCTF{818ca3a840e768da7d5fcdeaedd5012f}

逆向学习汇编篇:数据在内存与寄存器之间的传输机制

本节课在线学习视频&#xff08;网盘地址&#xff0c;保存后即可免费观看&#xff09;&#xff1a; ​​https://pan.quark.cn/s/5ff6bb7b23ed​​ 在逆向工程领域&#xff0c;理解数据如何在内存和寄存器之间传输是至关重要的。这不仅帮助我们理解程序的执行流程&#xff0c…

红队内网攻防渗透:内网渗透之内网对抗:权限维持篇内网AD域Kerberos点黄金票据白银票据钻石票据蓝宝石票据

参考资料: https://forum.butian.net/share/524 https://mp.weixin.qq.com/s/rt2IpxGV-nhAp-3Cqpo1eA 1、黄金票据 黄金票证是一种权限维持手段,攻击者获得了对Active Directory密钥分发服务帐户KRBTGT的控制权,并使用该帐户伪造有效的Kerberos票证授予票证TGT。这使攻击者…

小程序的生命周期使用方法和应用场景

小程序生命周期 初始化&#xff08;App Launch&#xff09; • 触发时机&#xff1a;小程序首次启动时。 • 主要事件&#xff1a;onLaunch。 • 功能与适用场景&#xff1a; • 全局数据初始化&#xff1a;设置应用的全局状态和变量。 • 登录状态检查&#xff1a;判断用户是…

chrome的插件怎么获取到安装包

问: chrome的插件怎么获取到安装包 回答: 在chrome浏览器输入: chrome://version/ 复制: 个人资料路径, 打开这个路径, 在文件中打开Extensions这个文件夹, 这个文件夹就是存放插件安装包的文件夹.

个人对JVM的一点理解

JVM&#xff08;Java 虚拟机&#xff09;是 Java 程序能够跨平台运行的关键。它负责将 Java 字节码转换为机器码并执行。 JVM 主要由类加载器、运行时数据区、执行引擎和本地方法接口等部分组成。运行时数据区包括方法区、堆、虚拟机栈、本地方法栈和程序计数器等。 GC&#xf…

linux网络代理

一、前言 在 CentOS 系统中&#xff0c;配置 HTTP 代理&#xff08;http_proxy&#xff09;通常是为了使系统或应用程序通过代理服务器进行网络访问。HTTP 代理在网络限制、节省带宽、提高安全性等方面具有重要作用&#xff0c;可以通过该方式使得centos访问外网&#xff0c;原…