LeetCode "Design Hit Counter"

Hits come and go - so we use queue. Nothing special.

class HitCounter {
    queue<int> q;
public:
    /** Initialize your data structure here. */
    HitCounter() {
        
    }
    
    /** Record a hit.
        @param timestamp - The current timestamp (in seconds granularity). */
    void hit(int timestamp) {
        q.push(timestamp);
    }
    
    /** Return the number of hits in the past 5 minutes.
        @param timestamp - The current timestamp (in seconds granularity). */
    int getHits(int timestamp) {
        while(!q.empty() && (timestamp - q.front()) >= 300) q.pop();
        return q.size();
    }
};
原文地址:https://www.cnblogs.com/tonix/p/5622032.html