栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java最近的请求次数leetcode

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java最近的请求次数leetcode

写一个 RecentCounter 类来计算特定时间范围内最近的请求。

请你实现 RecentCounter 类:

RecentCounter() 初始化计数器,请求数为 0 。
int ping(int t) 在时间 t 添加一个新请求,其中 t 表示以毫秒为单位的某个时间,并返回过去 3000 毫秒内发生的所有请求数(包括新请求)。确切地说,返回在 [t-3000, t] 内发生的请求数。
保证 每次对 ping 的调用都使用比之前更大的 t 值。

class RecentCounter {

    Queue queue;
    
    public RecentCounter() {
        queue = new ArrayDeque();
    }
    
    public int ping(int t) {
        queue.add(t);
        while( (t-queue.peek()) > 3000){
            queue.poll();
        }
        return queue.size();
    }
}

执行用时:18 ms, 在所有 Java 提交中击败了96.32%的用户

内存消耗:49.1 MB, 在所有 Java 提交中击败了88.18%的用户

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/862674.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号