Files
obsidian/АиСД/Задачи/LeetCode/Number of Recent Calls.md
T
roma-dxunvrs 4fabe16272 04.09
2026-09-04 22:55:43 +03:00

17 lines
590 B
Markdown

Leetcode #933 | #Easy | [[Очередь]] | [[Интервалы]] | [[Design]]
## Идея
Используем очередь, при пинге добавляем время в конец, с верха снимаеи все что меньше t-3000, возвращаем длину очереди
## [[Big-O]]
- Время ```O(1)```
- Память ```O(W)```
## Код
```Java
class RecentCounter {
private Queue<Integer> q = new ArrayDeque<>();
public int ping(int t) {
q.offer(t);
while (q.peek() < t - 3000) q.poll();
return q.size();
}
}
```