Talentd
FleetCode
Make and follow sheets.Sign in

Design Problems (132)

Problems tagged with Design. Start with the easy ones, then move to medium and hard.

14 Easy88 Medium30 Hard

Learn these first

1
Queue

Queues help manage ordered events, streams, or sliding windows in design problems like hit counters or rate limiters.

2
Hash Table

Many design problems rely on O(1) key lookups. Hash tables are commonly combined with other structures to maintain fast access while tracking additional state.

3
Linked List

Used to maintain ordering in structures like LRU caches and browser history. Understanding node manipulation and pointer updates is essential for many design tasks.

4
Heap (Priority Queue)

Important for designs that require retrieving minimum or maximum elements efficiently, such as scheduling systems or frequency tracking structures.

TitleSolutionAcceptDifficultyTopics
146. LRU CacheVideo
Solution48.2%Medium
Design, Doubly-Linked List +2· 120 companies
155. Min StackVideo
Solution58.5%Medium
Design, Stack· 37 companies
Solution39.1%Easy
Array, Data Stream +3· 2 companies
Solution69.9%Medium
Design, Hash Table +2· 21 companies
Solution70.1%Easy
Design, Queue +1· 9 companies
Solution70.2%Easy
Design, Queue +1· 12 companies
244. Shortest Word Distance IIVideoPremium
Solution62.8%Medium
Array, Design +3· 4 companies
251. Flatten 2D VectorVideoPremium
Solution50.5%Medium
Array, Design +2· 4 companies
271. Encode and Decode StringsVideoPremium
Solution51.9%Medium
Array, Design +1· 11 companies
281. Zigzag IteratorVideoPremium
Solution67.1%Medium
Array, Design +2· 5 companies
Solution61.9%Medium
Array, Design +1· 3 companies
288. Unique Word AbbreviationVideoPremium
Solution28.1%Medium
Array, Design +2· 1 company
Solution54.9%Hard
Data Stream, Design +3· 40 companies
Solution73.5%Easy
Array, Design +1· 8 companies
Solution59.2%Medium
Array, Design +2· 10 companies
Solution43.9%Medium
Array, Binary Indexed Tree +2· 4 companies
Solution46.0%Medium
Array, Binary Indexed Tree +3· 3 companies
Solution65.6%Medium
Depth-First Search, Design +4· 19 companies
Solution80.2%Easy
Array, Data Stream +2· 11 companies
348. Design Tic-Tac-ToeVideoPremium
Solution58.8%Medium
Array, Design +3· 13 companies
353. Design Snake GameVideoPremium
Solution40.0%Medium
Array, Design +3· 10 companies
355. Design TwitterVideo
Solution45.6%Medium
Design, Hash Table +2· 14 companies
359. Logger Rate LimiterVideoPremium
Solution76.8%Easy
Data Stream, Design +1· 21 companies
362. Design Hit CounterVideoPremium
Solution69.6%Medium
Array, Binary Search +3· 25 companies
379. Design Phone DirectoryVideoPremium
Solution53.3%Medium
Array, Design +3· 1 company
Solution55.3%Medium
Array, Design +3· 38 companies
Solution59.6%Medium
Array, Design +2· 8 companies
Solution44.2%Hard
Design, Doubly-Linked List +2· 13 companies
460. LFU CacheVideo
Solution50.6%Hard
Design, Doubly-Linked List +2· 32 companies
Solution86.5%Medium
Design, Hash Function +2· 9 companies
Solution48.0%Hard
Design, Hash Table +3· 16 companies
Solution40.5%Easy
Array, Design +2· 1 company
Solution55.4%Medium
Array, Design +2· 21 companies
631. Design Excel Sum FormulaVideoPremium
–39.3%Hard
Array, Design +3· 9 companies
635. Design Log Storage SystemVideoPremium
Solution59.8%Medium
Design, Hash Table +2· 4 companies
Solution65.2%Medium
Array, Design +2· 5 companies
Solution58.4%Medium
Depth-First Search, Design +3· 2 companies
677. Map Sum PairsVideo
Solution57.4%Medium
Design, Hash Table +2· 3 companies
705. Design HashSetVideo
Solution67.9%Easy
Array, Design +3· 6 companies
706. Design HashMapVideo
Solution66.5%Easy
Array, Design +3· 13 companies
Solution30.6%Medium
Design, Linked List· 6 companies
Showing 1–50 of 132

More about Design

Design problems in Data Structures and Algorithms test your ability to build efficient, reusable systems using fundamental data structures. Instead of solving a single computation task, these problems require you to design a class or data structure that supports multiple operations efficiently. Examples include building an LRU cache, implementing a hit counter, designing a data stream tracker, or creating a custom iterator.

These questions are extremely common in technical interviews because they evaluate how well you combine multiple concepts. A typical Design problem might require you to integrate structures like a Hash Table for constant-time lookups, a Linked List for maintaining order, or a Heap (Priority Queue) to manage priorities efficiently. Many designs also rely on structural concepts from Tree data structures or search techniques like Binary Search.

Why Design problems matter in interviews:

  • They test your ability to combine multiple data structures.
  • They reveal whether you can optimize operations such as insert, delete, and lookup.
  • They evaluate object-oriented thinking and API design.
  • They simulate real-world engineering problems such as caching, queues, and streaming data.

Common Design interview questions include building an LRU/LFU cache, implementing a min stack, designing a browser history system, or creating a time-based key-value store. These problems often require careful trade-offs between time complexity and memory usage. Interviewers typically expect solutions with optimal complexities like O(1) or O(log n) for core operations.

The best way to master this topic is by recognizing recurring patterns. Many problems reuse similar ideas—combining hash maps with linked structures, managing state through queues or stacks, or maintaining sorted elements with heaps or trees. Once you understand these patterns, solving new Design problems becomes much faster.

FleetCode provides with detailed explanations and complexity analysis, helping you build the intuition needed to confidently handle design-style coding interview questions.

Design: common questions

What are Design problems in DSA?

Design problems require you to implement a data structure or class that supports multiple operations efficiently. Instead of solving a single algorithmic task, you build a reusable system such as an LRU cache, min stack, or time-based key-value store.

What is the best way to learn Design problems?

Start by mastering core data structures like hash tables, linked lists, heaps, and queues. Then practice classic designs such as LRU Cache and Min Stack before moving to more complex systems like streaming counters and social feed designs.

What patterns are common in Design DSA problems?

Common patterns include combining a hash map with a doubly linked list for O(1) operations, using heaps for priority-based retrieval, maintaining state with queues or stacks, and using balanced trees for ordered data access.

Is Design an important topic for FAANG interviews?

Yes. Companies like Google, Amazon, and Meta frequently ask Design-style coding questions because they simulate real engineering tasks. These questions test both algorithmic thinking and data structure integration.

What are the best Design problems for coding interviews?

Popular interview questions include LRU Cache, LFU Cache, Min Stack, Design Twitter, Design Hit Counter, and Time-Based Key-Value Store. These problems test how well you combine data structures like hash maps, linked lists, and heaps.

How many Design problems should I practice for interviews?

This is usually enough to understand common patterns like hash map + linked list combinations or priority-based structures.