leetcode——362.敲击计数器
思路:
- 单queue实现(敲击时间为单调递增)
- 使用pair<int,int>类型 first second 代替 map的计算功能
代码:
class HitCounter {private:queue<pair<int, int>> q;int sum;
public:HitCounter() {sum=0;}//指定时间敲击计数器void hit(int timestamp) {//重复敲击if(!q.empty() && q.back().first == timestamp) {q.back().second++;sum++;}//首次敲击else {q.push(make_pair(timestamp, 1));sum++;}}//返回过去5分钟内被敲击的次数int getHits(int timestamp) {//过期敲打次数移除while(!q.empty() && (timestamp - q.front().first >= 300)) {sum -= q.front().second;q.pop();}return sum;}
};
leetcode——362.敲击计数器相关推荐
- LeetCode 362. 敲击计数器(map)
文章目录 1. 题目 2. 解题 1. 题目 设计一个敲击计数器,使它可以统计在过去5分钟内被敲击次数. 每个函数会接收一个时间戳参数(以秒为单位),你可以假设最早的时间戳从1开始,且都是按照时间顺序 ...
- LeetCode 362. 敲击计数器
具体思想: 队列直接整: 具体代码: class HitCounter {public:HitCounter() {}void hit(int timestamp) {que.push(timesta ...
- LeetCode - 362 敲击计数器(设计)
双端队列 class HitCounter {private Deque<Integer> deque;public HitCounter() {deque = new LinkedLis ...
- 362 敲击计数器
题目描述: 设计一个敲击计数器,使它可以统计在过去5分钟内被敲击次数. 每个函数会接收一个时间戳参数(以秒为单位),你可以假设最早的时间戳从1开始,且都是按照时间顺序对系统进行调用(即时间戳是单调递增 ...
- LeetCode刷题实战362:敲击计数器
算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...
- LeetCode-Python-362. 敲击计数器
设计一个敲击计数器,使它可以统计在过去5分钟内被敲击次数. 每个函数会接收一个时间戳参数(以秒为单位),你可以假设最早的时间戳从1开始,且都是按照时间顺序对系统进行调用(即时间戳是单调递增). 在同一 ...
- 机试算法题-敲击计数器
题目: 设计一个敲击计数器,使它可以统计在过去 5 分钟内被敲击次数.(即过去 300 秒) 您的系统应该接受一个时间戳参数 timestamp (单位为 秒 ),并且您可以假定对系统的调用是按时间顺 ...
- 【LeetCode - 362】敲击计数器
文章目录 1.题目描述 2.解题思路 3.解题代码 1.题目描述 2.解题思路 使用一个队列用于存储敲击时的时间戳,定义一个变量 startIndex 作为队首元素值,即五分钟内的第一次敲击的时间 ...
- leetcode刷题目录总结
题目 题目 技巧 相似的题目 其他 1. 无序数组中找出目标为target的两个数 先定义下一个数,然后找两位的数是否存在 高频, 大厂刷题班, 第27节 2.逆序链表两数相加 链表.各位加法 高频, ...
最新文章
- NSKeyedUnarchiver简单的数据存储
- linux 设置系统时间
- java手动输入函数_Java程序如何添加一个函数,如果玩家输入错误,它将返回代码。...
- propertychange input change
- 如何在Flutter上实现高性能的动态模板渲染
- android传感器实现摇一摇功能
- IntentService的使用介绍
- 普开数据第15届全国高校师资班(青海西宁)
- 重磅分享(二)——决策引擎实战部署
- ajax中json响应
- 2006中国最令人失望的十所大学
- 问题:C语言习题5.22 - 学生成绩的处理
- 《操作系统原理及应用》题库-选择题
- golang制作一个斗地主游戏服务器[5]:牌型
- 计算机资源管理菜单包括哪些,资源管理器文件菜单有哪些命令,资源管理器命令...
- 基于C语言设计的无边框背景透明窗体
- 支付宝api全(支付宝支付(app,h5,js),支付宝订单查询,支付宝退款,支付宝交易退款查询,支付宝提现,支付宝提现查询)
- 阿里云服务器ECS有哪些功能特性?
- JDBC-使用Statement操作数据库的弊端
- 地铁自动驾驶模型,地铁列车牵引系统整车模型。