Files
obsidian/АиСД/Задачи/LeetCode/Number of Recent Calls.md
T
roma-dxunvrs f57762fd3b Init
2026-09-03 21:40:46 +03:00

17 lines
577 B
Markdown

Leetcode #933 | #Easy | [[Очередь]] | [[Интервалы]]
## Идея
Используем очередь, при пинге добавляем время в конец, с верха снимаеи все что меньше 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();
}
}
```