We use cookies for site analytics. Accept to help us understand how the site is used. See our Privacy Policy for details.
A medium design problem, graded against 6 test cases (3 of them hidden).
Build a working data structure to an API - LRU caches, rate limiters, and iterators.
Reach for it when you see: "Design a class supporting these operations in O(1)" - an API rather than a single function.
More Designproblems →Because this is a single-threaded model, the 'blocking' semantics collapse into simple full/empty checks - no locks, conditions, or threads. Use a deque as the FIFO buffer. `enqueue` appends and returns true only while `size < capacity`, returning false otherwise. `dequeue` pops the front and returns it, or returns -1 when empty. `size` returns the current length. Using a deque keeps front removal O(1).
The full reference solution in every supported language stays in the editor above - reveal it there once you have had a real attempt.
Read off this problem's own test suite, so these are the cases a submission actually has to survive.
These apply to the pattern as a whole, not just this problem.