Files
obsidian/АиСД/Задачи/LeetCode/Design Hit Counter.md
T
roma-dxunvrs 0e6e583e6d
deploy / Pull and Restart (push) Successful in 17s
refactor: wiki links -> md links
2026-09-22 08:52:23 +03:00

657 B

Leetcode #362 | #Medium | Очередь | Интервалы | Design

Идея

Аналог Number of Recent Calls, также очередь

Big-O

  • Время O(1)
  • Память O(W)

Код

public class HitCounter {
    private Queue<Integer> q = new ArrayDeque<>();
    public void hit(int timestamp) { q.offer(timestamp); }
    public int getHits(int timestamp) {
        while (!q.isEmpty() && q.peek() <= timestamp - 300) q.poll();
        return q.size();
    }
}