leetcode933. 最近的请求次数
写一个 RecentCounter 类来计算最近的请求。
它只有一个方法:ping(int t),其中 t 代表以毫秒为单位的某个时间。
返回从 3000 毫秒前到现在的 ping 数。
任何处于 [t - 3000, t] 时间范围之内的 ping 都将会被计算在内,包括当前(指 t 时刻)的 ping。
保证每次对 ping 的调用都使用比之前更大的 t 值。
示例:
输入:inputs = ["RecentCounter","ping","ping","ping","ping"], inputs = [[],[1],[100],[3001],[3002]]
输出:[null,1,2,3,3]
提示:
每个测试用例最多调用 10000 次 ping。
每个测试用例会使用严格递增的 t 值来调用 ping。
每次调用 ping 都有 1 <= t <= 10^9。
思路:可以维护一个队列,只存未过期的即可。官方题解也是这么写的。
class RecentCounter {Queue<Integer> q=new LinkedList();;public RecentCounter() {}public int ping(int t) {q.add(t);while (q.peek() < t-3000)q.poll();return q.size();}
}/*** Your RecentCounter object will be instantiated and called as such:* RecentCounter obj = new RecentCounter();* int param_1 = obj.ping(t);*/
但是,可能会面临一个poll的峰值,影响性能。
目前我想到的方案可以直接弄个数组(如果做限制可以循环数组,但是它要求返回数量,没办法)
class RecentCounter {Queue<Integer> q=new LinkedList();int[] arr=new int[10000];int a,b;public RecentCounter() {a=0;b=0;}
/*public int ping(int t) {q.add(t);while (q.peek() < t-3000)q.poll();return q.size();}*/public int ping(int t) {arr[b++]=t;while (a<10000 && arr[a] < t-3000)a++;return b-a;}}/*** Your RecentCounter object will be instantiated and called as such:* RecentCounter obj = new RecentCounter();* int param_1 = obj.ping(t);*/
leetcode933. 最近的请求次数相关推荐
- LeetCode简单题之最近的请求次数
题目 写一个 RecentCounter 类来计算特定时间范围内最近的请求. 请你实现 RecentCounter 类: RecentCounter() 初始化计数器,请求数为 0 . int pin ...
- 降低http请求次数
80%的终于用户响应时间花在前端程序上.而其大部分时间则花在各种页面元素,如图像.样式表.脚本和Flash等的下载上. 降低页面元素将会降低HTTP请求次数.这是高速显示页面的关键所在. 1.Imag ...
- Web项目性能优化之减少HTTP请求次数优化
作为项目经理的我,在近两个月内,时常被客户抱怨,我们的Web程序性能太差,经常宕机,即使服务器的配置再好,在业务请求量大的情况下也比较容易出现系统繁忙,线程堵塞,最后Web容器的HTTP线程池被慢慢耗 ...
- ServiceStack.Redis 请求次数6000次异常
原文:ServiceStack.Redis 请求次数6000次异常 Redis是一个非常NB的内存级的数据库,我们可以把很多"热数据"(即读写非常多的数据)放入其中来操作,这样就减 ...
- Django(part42)--限制IP请求次数
学习笔记,仅供参考,有错必纠 限制IP请求次数 这个Blog中,我们将使用中间件,实现强制某个IP地址只能向某个地址发送3次GET请求. 在做这个案例之前我们需要先学两个request的属性: req ...
- 高并发大流量专题---3、前端优化(减少HTTP请求次数)
高并发大流量专题---3.前端优化(减少HTTP请求次数) 一.总结 一句话总结: 图片地图:使用<map><area></area></map>标签. ...
- 限制ip在一定时间内的请求次数
//规定的时间限制请求次数$num = 10;$time = 60;$error_ip_num_ = Cache::get('ip_num_'.$request->ip(),0);if(!$er ...
- 输入框实时搜索优化,减少请求次数、取消无用请求
背景 用户在输入框输入内容的同时进行搜索,针对搜索实时搜索结果进行展示 问题 如果不做处理,只监听输入框的input事件或者键盘按下弹起事件,实时对文本内容进行搜索,往往因为网络波动问题可能会造成结果 ...
- ajax定时器重复,jquery ajax使用定时器限制请求次数及终止重复请求
场景描述: 在我们平时的开发过程中,经常会遇到这样的情况.在搜索功能中进行模糊搜索或者联想关联. 这就要我们每次对输入框中的数据进行改动时,都要发送一次请求.当在短时间内多次操作改动时,问题就出现了. ...
最新文章
- 旷视张祥雨:神经网络架构设计新思路
- mariadb 和mysql主从_MariaDB主从同步
- 关闭excel多余的addin,提供excel启动速度
- js中sort()方法的用法,参数以及排序原理
- Python教学与学习过程中应注意的九句话
- 力扣 ---- java
- 截短 UTF-8 字符串
- 改变维度_一个人的各种维度,哪些是可以改变的?
- mysql 5.6 二进制安装包_centos6上mysql5.6二进制包安装
- python模拟登录12306_python基于selenium模块实现自动登录12306网站
- 电路交换、报文交换、分组交换
- launcher3的具体学习
- Kettle工具——Spoon、Kitchen、Pan、Carte
- JVM3-类文件结构
- ctf.show 萌xin区杂项
- 40079 钉钉_钉钉获取免登陆授权码CODE,返回:不存在的临时授权码40078
- 英语入门造句专用名词表(共 396 个)
- 最长对称子串(用各个字符确定对称轴进行判断)
- 【whistle】Whistle 安装及使用
- Dell一体机声卡无声,喇叭有杂音
热门文章
- maya怎么贴膜_maya怎么渲染成白膜?
- python 局域网扫描_Python 简化版扫描局域网存活主机
- python 属性描述符_Python属性描述符(二)
- win10 python 调用模块_python常识系列14--gt;python通过jpype模块调用jar包
- STL内嵌数据类型: value_type
- V210 UART TX 流程
- Window CE 6.0流驱动开发动态加载实验
- 擦窗机器人测试标准_擦窗机器人,我选择玻妞的三个理由!
- vscode python环境配置_用VScode配置Python开发环境
- 新浪云python示例_Python Web框架Flask中使用新浪SAE云存储实例