Question:
Design a logger system that receive stream of messages along with its timestamps, each message should be printed if and only if it is not printed in the last 10 seconds.
Given a message and a timestamp (in seconds granularity), return true if the message should be printed in the given timestamp, otherwise returns false.
It is possible that several messages arrive roughly at the same time.
Example:
Explanation:
按照普通的hashmap存下所有值,然后更新timestamp是一种办法。但是实际中会浪费很多空间,所以比较好的方式其实是用queue存下最近timestamp在10以内的值,保持一个size最多为10的窗口就行。但是跑出来时间挺久的,用的空间少。