首页 > 其他 > 详细

LeetCode #359. Logger Rate Limiter

时间:2020-12-08 09:37:52      阅读:26      评论:0      收藏:0      [点我收藏+]

题目

359. Logger Rate Limiter


解题方法

构造函数设置一个字典dic,在shouldPrintMessage函数中根据message是否在字典中分为两种情况讨论,如果在字典中,看看当前时间戳和字典中存放的时间戳的差值是不是已经达到10了,如果是的,就更新一下时间戳,可以打印了。如果不是,就返回False。如果message不在字典中的话,那就给它加进去,再设置一个时间戳,也是返回True。
时间复杂度:O(1)
空间复杂度:O(n)


代码

class Logger:

    def __init__(self):
        self.dic = {}
    
    def shouldPrintMessage(self, timestamp: int, message: str) -> bool:
        if message in self.dic:
            if timestamp - self.dic[message] > 9:
                self.dic[message] = timestamp
            else:
                return False
        else:
            self.dic[message] = timestamp
        return True

LeetCode #359. Logger Rate Limiter

原文:https://www.cnblogs.com/RatsCommander/p/14100753.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!