news 2026/5/27 0:54:54

leetcode 895. 困难题 Maximum Frequency Stack 最大频率栈

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
leetcode 895. 困难题 Maximum Frequency Stack 最大频率栈

Problem: 895. Maximum Frequency Stack 最大频率栈

哈希表记录每种数值的索引列表,以及一个数值列表,pop时查找哈希表,拿到频次最大的索引列表的最大索引,并且update最大索引后面的那些数字的索引,然后从数值列表中删除这个数字,update哈希表

Code

class FreqStack { public: unordered_map<int, vector<int>> ump; vector<int> tr; FreqStack() { } void push(int val) { ump[val].push_back(tr.size()); tr.push_back(val); } int pop() { int mxINDEX = INT_MIN, mx = INT_MIN; for(auto && [k, l] : ump) { if(mx < (int)l.size()) { mx = l.size(); mxINDEX = l.back(); } else if(mx == (int)l.size()) { mxINDEX = max(mxINDEX, l.back()); } } for(auto && [k, l] : ump) { for(int i = 0; i < l.size(); i++) { if(l[i] > mxINDEX) { l[i]--; } } } int a = tr[mxINDEX]; tr.erase(tr.begin() + mxINDEX); ump[a].pop_back(); if(ump[a].size() == 0) { ump.erase(a); } return a; } };
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/25 19:50:48

什么是向量单位化 (vector normalization)

想象一下&#xff0c;向量就像一支箭头&#xff1a;它有方向&#xff08;箭头指向哪里&#xff09;&#xff0c;也有长度&#xff08;箭头有多长&#xff09;。比如在2D平面里&#xff0c;一个向量可以表示“向右走3步&#xff0c;再向上走4步”&#xff0c;写成 (3, 4)。这支箭…

作者头像 李华
网站建设 2026/5/21 23:24:40

乐天平台 (Rakuten) 数据采集指南

乐天平台数据采集存在两条核心路径&#xff1a;官方 Rakuten Web Service API 接入&#xff08;推荐&#xff0c;合法合规&#xff09;与非官方爬虫采集&#xff08;技术与法律风险并存&#xff09;。以下为完整方案与合规边界说明&#xff0c;适用于日本乐天市场 (Rakuten Ich…

作者头像 李华
网站建设 2026/5/9 7:42:41

5-FAM Maleimide,787632-00-2:高性能荧光标记试剂的核心解析

基本信息 英文名称&#xff1a;5-FAM Maleimide&#xff1b;5-FAM Mal&#xff1b;5-Carboxyfluorescein-MAL 中文名称&#xff1a;5-FAM马来酰亚胺&#xff1b;5-羧基荧光素-马来酰亚胺 CAS号&#xff1a;787632-00-2 分子式&#xff1a;C27H18N2O8 分子量&#xff1a;49…

作者头像 李华
网站建设 2026/5/23 3:31:30

68、Linux内核编译:从menuconfig配置到zImage生成全流程

Linux内核编译&#xff1a;从menuconfig配置到zImage生成全流程 一、核心概念先搞懂 1.1 关键术语解释 术语核心作用zImage压缩后的Linux内核镜像&#xff08;Image原始镜像 解压程序&#xff09;&#xff0c;体积小、启动快&#xff0c;适用于嵌入式设备menuconfigLinux内…

作者头像 李华