Top 154 Data structures Interview Questions

Practice the most frequently asked data structures interview questions. Each question includes expert tips, sample answers, and AI-powered practice.

40 Easy
78 Medium
36 Hard
01

Design a Set with $O(1)$ `insert`, `remove`, and `check`

Cisco interviewers ask this to evaluate your ability to balance time complexity trade-offs between arrays and hash tables. They specifically test if you understand how to combine a dynamic array for O(1) random access with a hash map for O(1) lookups, ensuring you can handle edge cases like collisions or resizing while maintaining constant time operations for all three required functions.

Easy
Cisco
02

Find the Celebrity (Graph)

Interviewers at Uber use this problem to assess your ability to optimize graph traversal algorithms under strict time constraints. They specifically evaluate whether you can recognize that a brute-force O(N^2) approach is inefficient and instead apply logical elimination strategies to achieve the required O(N) complexity, demonstrating strong analytical thinking.

Easy
Uber
03

Find Closest Value in BST

Meta asks this to evaluate a candidate's ability to leverage specific data structure properties for optimization rather than defaulting to brute force. They want to see if you recognize that BST ordering allows pruning half the tree at every step, reducing complexity from O(N) to O(log N). This tests logical reasoning and algorithmic efficiency awareness.

Easy
Meta
04

Insert into a Binary Search Tree

Netflix values engineers who write clean, efficient code that handles edge cases without over-engineering. This question tests your fundamental grasp of Binary Search Tree mechanics, specifically recursion versus iteration. They evaluate if you can maintain BST properties while inserting a node and assess your ability to handle null pointers gracefully.

Easy
Netflix
05

Merge Two Sorted Linked Lists

Stripe interviewers ask this to evaluate a candidate's mastery of pointer manipulation and edge case handling in low-level data structures. They specifically look for the ability to maintain list integrity while traversing without creating unnecessary memory overhead. This problem tests logical precision, as incorrect pointer updates can easily cause infinite loops or data loss, reflecting the reliability required for financial transaction systems.

Easy
Stripe
06

Implement a Dynamic Array/Vector

Microsoft evaluates this question to assess a candidate's grasp of memory management, algorithmic efficiency, and the ability to translate abstract mathematical concepts into practical code. Specifically, they test if you understand why simple linear resizing is inefficient compared to geometric growth, ensuring you can justify design decisions with amortization analysis rather than just writing functional code.

Easy
Microsoft
07

Design a Priority Queue using an Array

Oracle interviewers ask this to evaluate your fundamental understanding of data structure trade-offs. They specifically want to see if you can distinguish between unsorted and sorted array implementations. The goal is to assess whether you recognize that while insertion is O(1) in an unsorted array, retrieval becomes O(n), testing your ability to analyze performance implications rather than just memorizing code.

Easy
Oracle
08

Find the Town Judge (Array/Map)

LinkedIn asks this to evaluate your ability to model real-world social trust networks using efficient graph algorithms. They specifically test if you can translate a narrative problem into mathematical constraints (in-degree and out-degree) and optimize space complexity by recognizing that a single array suffices instead of a full adjacency matrix.

Easy
LinkedIn
09

Detect Cycle in a Linked List

Microsoft evaluates this question to assess a candidate's mastery of pointer manipulation and algorithmic efficiency. They specifically look for the ability to recognize O(n) space complexity pitfalls and apply the optimal O(1) space solution using Floyd's Tortoise and Hare. This tests logical reasoning, mathematical intuition regarding cycle detection, and the capacity to write clean, bug-free code under pressure.

Easy
Microsoft
10

Design a Set Data Structure

Meta interviewers ask this to evaluate your fundamental grasp of data structures and your ability to make pragmatic engineering trade-offs. They specifically test if you understand how hashing resolves collisions, the difference between O(1) average versus O(n) worst-case complexity, and whether you can implement a custom structure from scratch rather than relying solely on built-in libraries.

Easy
Meta
11

Design a Hash Set from Scratch

Uber interviewers ask this to verify your foundational grasp of memory management and collision handling. They specifically evaluate whether you understand how to map arbitrary keys to fixed array indices, handle edge cases like hash collisions, and manage dynamic resizing without relying on built-in libraries.

Easy
Uber
12

Shortest Distance to Character (Queue)

Netflix values engineers who prioritize performance and scalability in high-traffic environments. This question tests your ability to optimize time complexity from O(N^2) to O(N) using efficient data structures like queues or two-pointer techniques. It evaluates whether you can handle string manipulation problems with linear scans, a common requirement for their content delivery systems.

Easy
Netflix
13

Intersection of Two Arrays II (Hash Map)

Amazon interviewers ask this to evaluate your mastery of frequency counting and hash map efficiency. They specifically test if you can handle duplicate elements correctly, a common edge case in data processing. This assesses your ability to choose the optimal O(n) time complexity solution over brute force methods, aligning with their bias for action and inventing simple, scalable algorithms.

Easy
Amazon
14

Balanced Parentheses (Stack)

Apple interviewers ask this to evaluate a candidate's fundamental grasp of stack mechanics and their ability to handle state management during traversal. They specifically test logical precision in tracking open versus closed delimiters, ensuring you can solve problems requiring Last-In-First-Out (LIFO) logic without relying on built-in regex libraries.

Easy
Apple
15

Reverse a Linked List

Amazon asks this to evaluate your grasp of pointer manipulation and memory management fundamentals. They specifically test if you can handle edge cases like null inputs or single-node lists without crashing. The question also reveals your ability to choose between iterative and recursive approaches based on stack depth constraints, a critical skill for scalable backend systems.

Easy
Amazon
16

Path Sum (Binary Tree)

Google interviewers ask the Path Sum problem to evaluate a candidate's mastery of recursive thinking and tree traversal fundamentals. This question specifically tests the ability to maintain state across recursion levels without using global variables, ensuring candidates can handle backtracking logic cleanly while managing edge cases like null nodes or negative integers effectively.

Easy
Google
17

Maximum Depth of Binary Tree

Google interviewers use this problem to assess a candidate's fundamental grasp of recursion and tree traversal logic. It evaluates whether you can translate a recursive definition into clean, efficient code without getting lost in edge cases like null nodes or single-node trees. They specifically look for your ability to handle base cases correctly and manage the call stack depth intuitively.

Easy
Google
18

Binary Tree Paths (DFS)

Salesforce interviewers ask this to verify your grasp of recursive traversal and state management. They specifically evaluate if you can maintain a path string while backtracking through a tree structure without creating unnecessary memory overhead. This tests your ability to handle edge cases like empty trees or single-node leaves while ensuring the solution remains clean and efficient.

Easy
Salesforce
19

Remove Duplicates from Sorted List

Amazon interviewers ask this to evaluate your mastery of pointer manipulation and edge-case handling within linked lists. They specifically test if you can traverse a sorted structure efficiently while modifying it in-place without allocating extra memory, reflecting their 'Bias for Action' and focus on resource-constrained optimization.

Easy
Amazon
20

Level Order Traversal of a Binary Tree

Amazon interviewers ask this to verify your grasp of Breadth-First Search and queue management, core competencies for scalable system design. They specifically test if you can handle level-by-level processing without recursion, ensuring you understand how to track tree depth dynamically while maintaining O(N) time complexity.

Easy
Amazon
21

Find the Difference (Hash Map/XOR)

Spotify asks this question to evaluate a candidate's ability to optimize space complexity while maintaining linear time performance. They specifically look for knowledge of bitwise operations like XOR, which demonstrates deep understanding of binary arithmetic and memory efficiency—critical traits for building high-throughput streaming services where resource constraints matter.

Easy
Spotify
22

Design a Simple LRU Cache using Python/Java built-ins

Google asks this to verify if candidates understand that standard library abstractions are valid engineering tools when they meet complexity constraints. They evaluate your ability to recognize existing optimized structures like OrderedDict or LinkedHashMap, avoiding reinventing the wheel while still articulating the underlying logic of eviction policies and access ordering.

Easy
Google
23

Minimum Absolute Difference in BST

Uber asks this question to evaluate a candidate's ability to leverage fundamental data structure properties for optimization. Specifically, they assess whether you recognize that an in-order traversal of a Binary Search Tree yields a sorted sequence. This tests your capacity to reduce a naive O(N^2) comparison problem to an efficient O(N) linear scan by utilizing the inherent sorted nature of BSTs rather than brute-forcing all pairs.

Easy
Uber
24

Lowest Common Ancestor of a BST

Apple interviewers ask this to evaluate your ability to leverage specific data structure properties rather than relying on brute-force algorithms. They want to see if you recognize that BST ordering allows for O(h) time complexity instead of O(n). This tests your logical deduction, understanding of tree traversal mechanics, and capacity to write clean, efficient code under pressure.

Easy
Apple
25

Implement a Doubly Linked List

Cisco evaluates candidates on their ability to manage memory manually and handle pointer manipulation correctly. This question tests if you understand bidirectional traversal, which is critical for network packet buffering and routing table optimizations. Interviewers look for your attention to detail when updating multiple pointers simultaneously to prevent memory leaks or broken links in the data structure.

Easy
Cisco
26

Check if Two Trees are Identical

Spotify engineers value code clarity and robustness in their streaming infrastructure. This question tests your ability to handle recursive logic, manage base cases for null pointers, and verify structural integrity alongside data values. It reveals if you can translate a conceptual definition of identity into clean, bug-free traversal code without over-engineering the solution.

Easy
Spotify
27

Find the Middle of a Linked List (No length)

Google interviewers ask this to evaluate a candidate's ability to optimize space and time complexity simultaneously. They specifically test if you recognize that calculating length requires two passes, whereas the fast-slow pointer technique solves it in one pass with O(1) extra space. This assesses your fundamental grasp of algorithmic efficiency and pointer manipulation skills.

Easy
Google
28

Implement a Singly Linked List

Amazon interviewers ask this to evaluate your mastery of pointer manipulation and memory management fundamentals. They specifically test if you can handle edge cases like empty lists or single-node scenarios without crashing. This question reveals your ability to think algorithmically about data traversal and your capacity to write clean, bug-free code under pressure, a core competency for Amazon's engineering standards.

Easy
Amazon
29

Find the Town Judge (Graph representation)

Cisco evaluates this question to assess a candidate's ability to model real-world relationships as graph problems and optimize for linear time complexity. They specifically look for the skill of recognizing that tracking trust counts is more efficient than traversing edges, demonstrating practical algorithmic thinking over rote memorization.

Easy
Cisco
30

Implement a Circular Queue

Microsoft asks this to evaluate a candidate's grasp of memory efficiency and pointer arithmetic without relying on dynamic resizing. It tests the ability to implement FIFO logic within a fixed buffer, specifically checking for edge-case handling when the queue wraps around the array boundaries.

Easy
Microsoft
31

Invert Binary Tree

Netflix values engineers who write clean, maintainable code and understand fundamental data manipulation deeply. This question tests your ability to visualize tree structures, choose between recursion and iteration effectively, and handle pointer manipulation without corrupting the original structure. It reveals if you can implement a core algorithm with optimal time complexity while maintaining code readability.

Easy
Netflix
32

Design a Simple Spell Checker (Trie/Set)

IBM interviewers ask this to evaluate your mastery of fundamental data structures and your ability to balance time complexity against space constraints. They specifically want to see if you understand when a Trie offers superior prefix-search capabilities compared to a Hash Set, reflecting their focus on scalable, efficient legacy and cloud infrastructure solutions.

Easy
IBM
33

Find the Root of N-ary Tree (Graph Traversal)

Google interviewers ask this to evaluate your ability to recognize patterns beyond standard binary trees and apply graph traversal logic efficiently. They specifically test if you can optimize from a naive O(N^2) brute force approach to an optimal O(N) solution using mathematical properties or hash sets, demonstrating strong algorithmic thinking under constraints.

Easy
Google
34

Intersection of Two Linked Lists

Apple interviewers ask this to evaluate a candidate's ability to manipulate pointers without allocating extra memory. They specifically test if you can solve complex traversal problems using the two-pointer technique, demonstrating deep understanding of linked list mechanics and efficient algorithmic thinking under strict space constraints.

Easy
Apple
35

Delete Node in a Linked List (O(1) trick)

Google interviewers ask this question to evaluate a candidate's ability to think outside standard algorithmic patterns and their understanding of memory manipulation constraints. It tests whether you can recognize that deleting a node without a head pointer requires copying data rather than adjusting pointers, revealing your depth in Data Structures fundamentals and problem-solving creativity under strict time complexity requirements.

Easy
Google
36

Insert into a Max Heap

Interviewers at Uber ask this to verify your foundational grasp of binary heap mechanics, which underpin their priority queue systems for dispatching and routing. They evaluate if you understand the O(log n) time complexity and can articulate the 'swim' operation logic without relying solely on memorized code, ensuring you can debug real-time scheduling issues.

Easy
Uber
37

Binary Tree Level Order Traversal II (Bottom-up)

Interviewers at Airbnb ask this to verify your mastery of Breadth-First Search (BFS) and queue manipulation. They specifically test if you can handle level-by-level processing and understand how to reverse the output order efficiently without compromising time complexity. This assesses your ability to solve standard tree problems with a slight variation, ensuring you don't just memorize solutions but adapt algorithms logically.

Easy
Airbnb
38

Minimum Depth of Binary Tree

Amazon asks this question to evaluate a candidate's ability to handle edge cases in recursive tree traversals, specifically distinguishing between null nodes and leaf nodes. Interviewers look for the competency to choose between Depth-First Search and Breadth-First Search based on the goal of finding the shortest path efficiently. It tests if you understand that stopping at the first leaf found is crucial for performance compared to calculating all depths.

Easy
Amazon
39

Implement a Queue using Stacks

Interviewers at Uber ask this to evaluate your ability to translate abstract data structure concepts into practical implementations. They specifically test if you understand the fundamental differences between LIFO and FIFO behaviors. This question reveals your problem-solving depth, as it requires manipulating two limited structures to simulate a third, demonstrating logical reasoning and mastery of time complexity trade-offs.

Easy
Uber
40

Find the Middle of a Linked List

Amazon interviewers ask this to evaluate your ability to optimize space and time complexity simultaneously. They specifically look for the 'Two-Pointer' technique, which demonstrates efficiency in handling data structures without extra memory. This question also tests your understanding of edge cases, such as even-length lists, aligning with Amazon's Leadership Principle of Insisting on Highest Standards.

Easy
Amazon
41

Convert Binary Tree to Doubly Linked List in Place

Microsoft interviewers ask this to evaluate your mastery of pointer manipulation and recursive thinking. They specifically test if you can transform a hierarchical structure into a linear one without allocating new nodes, demonstrating deep understanding of memory efficiency and in-place algorithms.

Hard
Microsoft
42

Shortest Distance from All Buildings (BFS)

Meta evaluates candidates on their ability to optimize graph traversal in constrained environments. This problem tests if you can handle multi-source BFS efficiently without redundant calculations, ensuring the solution scales with grid size while managing memory usage for distance accumulation.

Hard
Meta
43

Word Ladder (BFS)

Meta asks this to evaluate a candidate's ability to model real-world problems as unweighted graphs and implement Breadth-First Search efficiently. It tests spatial reasoning, understanding of queue-based traversal, and the capacity to optimize for time complexity in constrained environments where shortest path logic is critical.

Hard
Meta
44

Design a Distributed Set (Probabilistic)

Tesla evaluates this question to assess a candidate's ability to balance memory efficiency with computational speed in high-scale environments. They specifically look for understanding of probabilistic trade-offs, as Tesla systems process massive sensor data streams where exact storage is impossible. The interviewer wants to see if you can justify using approximate algorithms over deterministic ones when false positives are acceptable but false negatives are not.

Hard
Tesla
45

Binary Tree Postorder Traversal (Iterative)

Airbnb asks this to evaluate a candidate's mastery of stack-based state management and their ability to translate recursive logic into iterative solutions without relying on the call stack. They specifically test if you can handle complex pointer manipulation and edge cases, ensuring you can write robust code for high-traffic systems where recursion depth limits might cause crashes.

Hard
Airbnb
46

Word Search II (Trie & Backtracking)

Cisco evaluates candidates on their ability to optimize complex algorithms for real-world networking scenarios. This question tests mastery of Trie data structures for efficient prefix handling and backtracking for state management. It specifically assesses your capacity to balance time complexity against memory usage, a critical skill for high-performance routing systems.

Hard
Cisco
47

Find Duplicate Subtrees (Postorder & Map)

Microsoft asks this question to evaluate a candidate's mastery of tree traversal algorithms, specifically postorder, and their ability to optimize space-time complexity using serialization. It tests whether you can convert complex structural problems into hashable string representations while managing edge cases like null pointers efficiently.

Hard
Microsoft
48

Design a Word Dictionary with Wildcards

Uber asks this to evaluate a candidate's ability to balance time complexity with space efficiency in real-world routing systems. They specifically test your grasp of Trie structures for prefix optimization and your skill in implementing backtracking algorithms to handle pattern matching. This problem simulates scenarios where search queries are fuzzy or incomplete, requiring robust data structure design under strict performance constraints.

Hard
Uber
49

Design a Least Frequently Used (LFU) Cache

Google interviewers ask this to evaluate a candidate's mastery of advanced data structures, specifically the interplay between hash maps and doubly-linked lists. They assess whether you can design complex systems that maintain strict O(1) time complexity while handling multiple eviction policies like frequency tracking and tie-breaking rules for equal frequencies.

Hard
Google
50

Design a Set of Stacks with `popAt`

Adobe evaluates this question to assess a candidate's ability to design scalable data structures that handle memory fragmentation and edge cases. It tests understanding of array-based stack implementations, pointer manipulation across sub-structures, and the critical trade-off between strict capacity enforcement versus maintaining structural integrity during partial pops.

Hard
Adobe
51

Reconstruct Itinerary (Graph & Stack)

Microsoft asks this to evaluate a candidate's mastery of graph traversal algorithms, specifically Hierholzer's algorithm or DFS with backtracking. They assess the ability to handle complex constraints like lexical ordering while ensuring every ticket is used exactly once. It tests whether you can model real-world routing problems as directed graphs and manage state efficiently without getting stuck in dead ends.

Hard
Microsoft
52

Implement an All $O(1)$ Data Structure with Frequency

Stripe engineers ask this to evaluate a candidate's ability to trade space for time complexity while managing complex pointer manipulations. They specifically test if you can design a system that maintains sorted order of frequencies without sorting, demonstrating deep understanding of hash maps and doubly linked lists under strict O(1) constraints.

Hard
Stripe
53

Serialize and Deserialize Binary Tree (Preorder)

Meta evaluates this question to assess a candidate's mastery of tree recursion, serialization logic, and state management. It tests the ability to translate an in-memory hierarchical structure into a linear string format without losing structural integrity. Interviewers specifically look for how you handle edge cases like null nodes and whether you can implement both encoding and decoding with optimal time and space complexity.

Hard
Meta
54

Implement a Red-Black Tree (Conceptual)

Tesla evaluates candidates on their ability to design efficient, self-balancing algorithms for high-performance systems like autonomous driving stacks. This question tests deep understanding of logarithmic time complexity, memory locality, and the trade-offs between strict balance and implementation complexity. It reveals if you can reason about edge cases where standard binary search trees fail under heavy load.

Hard
Tesla
55

Design a Bloom Filter (Conceptual)

Stripe evaluates candidates on their ability to balance theoretical computer science with practical engineering constraints. This question tests if you understand probabilistic data structures, specifically how they optimize space in high-throughput distributed systems like payment gateways. It assesses your grasp of trade-offs between memory efficiency and accuracy, a critical skill for building scalable infrastructure.

Hard
Stripe
56

Implement an All $O(1)$ Data Structure

Stripe engineers value systems that balance extreme performance with memory efficiency. This question tests your ability to combine hash maps for O(1) lookups with doubly linked lists for ordered traversal, a pattern critical for high-throughput caching and real-time analytics platforms where latency must be minimized regardless of data volume.

Hard
Stripe
57

Implement a Map with Time Expiration

Uber interviewers ask this to evaluate your ability to balance time complexity with real-world concurrency and memory management. They specifically test if you can design a system that handles automatic cleanup without blocking the main thread, a critical requirement for high-throughput ride-hailing services where stale location data must be discarded instantly.

Hard
Uber
58

Design a Simple LFU Cache (Conceptual)

Apple evaluates this question to assess your mastery of advanced data structures and your ability to optimize for both time and space complexity simultaneously. They want to see if you can design a system that balances frequency tracking with eviction logic, demonstrating deep algorithmic thinking required for high-scale infrastructure.

Hard
Apple
59

Word Dictionary with Wildcards (Trie)

Interviewers at IBM ask this to evaluate your mastery of Trie data structures and your ability to adapt standard algorithms for complex constraints. They specifically test your capacity to implement Depth-First Search (DFS) recursion when handling wildcards, assessing whether you can balance time complexity trade-offs between insertion and search operations in a production-ready system.

Hard
IBM
60

Design a Data Stream Median Finder

Microsoft interviewers ask this to evaluate a candidate's ability to maintain real-time data invariants under dynamic conditions. They specifically test proficiency with heap properties, the logic of balancing two data structures, and the capacity to optimize time complexity from O(N) to O(log N) for streaming operations.

Hard
Microsoft
61

Implement a Hash Map from Scratch

Interviewers at Airbnb ask this to evaluate your ability to translate abstract data structure concepts into robust, production-ready code. They specifically test your understanding of memory management, collision resolution strategies like chaining, and hash function design. This question reveals whether you can handle edge cases such as resizing and load factors, which are critical for maintaining the high availability and performance standards required in their distributed travel systems.

Hard
Airbnb
62

Implement a Map with Time Expiration (Heap/Set)

Apple evaluates this question to assess your ability to balance space-time trade-offs in real-world caching scenarios. They specifically test if you can design a system that handles concurrent expiration efficiently without blocking operations, ensuring high availability and low latency for features like session management or temporary data storage.

Hard
Apple
63

Design a Calendar Scheduling System (Interval Tree)

Apple evaluates this question to assess a candidate's ability to optimize for real-time performance in consumer-facing applications. They specifically test knowledge of advanced data structures like Interval Trees to handle high-frequency scheduling conflicts efficiently. The interviewer wants to see if you can balance time complexity against implementation complexity while designing robust systems.

Hard
Apple
64

Implement a Segment Tree (Range Query)

Oracle evaluates candidates on their ability to optimize database operations and handle high-volume data efficiently. This question tests mastery of hierarchical data structures, specifically the Segment Tree, which is critical for solving range query problems in O(log n) time. Interviewers assess your understanding of recursion, array indexing logic, and how to balance preprocessing costs against query speed in real-world systems.

Hard
Oracle
65

Implement HashMap with Separate Chaining

Amazon interviewers ask this to evaluate your ability to handle collision resolution and memory management under pressure. They specifically test if you understand how separate chaining works, can implement efficient hash functions, and know when to trigger a resize operation to maintain O(1) performance. This mirrors Amazon's expectation for engineers who build scalable systems that handle edge cases without degrading user experience.

Hard
Amazon
66

Design a Skiplist (Probabilistic Data Structure)

Oracle evaluates candidates on their ability to balance theoretical computer science with practical engineering trade-offs. This question tests if you understand probabilistic algorithms versus deterministic structures like B-Trees, which Oracle databases frequently utilize. It assesses your grasp of space-time complexity trade-offs and your capacity to explain non-intuitive data structures clearly under pressure.

Hard
Oracle
67

Find Duplicate Subtrees

Meta asks this to evaluate a candidate's mastery of tree serialization and hash map utilization for pattern recognition. It tests the ability to transform complex structural data into comparable strings, ensuring candidates can identify deep logical equivalences rather than just superficial node value matches. This assesses advanced recursion skills and memory management efficiency under pressure.

Hard
Meta
68

Implement a Fibonacci Heap (Conceptual)

Interviewers at Tesla ask this to evaluate a candidate's depth in algorithmic optimization and amortized analysis. They specifically want to see if you understand why constant-time merging matters for real-world systems handling massive, dynamic datasets, such as autonomous vehicle routing or traffic prediction models where dense graph performance is critical.

Hard
Tesla
69

Path Sum III (Path in Tree)

Google interviewers ask this question to evaluate a candidate's ability to optimize brute-force tree traversals using advanced data structures. They specifically test your understanding of prefix sums and hash map usage to reduce time complexity from O(N^2) to O(N). It assesses whether you can handle non-standard path constraints where paths start and end anywhere, requiring deep insight into recursive state management.

Hard
Google
70

Implement a Trie with Deletion

Microsoft asks this to evaluate a candidate's mastery of pointer manipulation and edge case handling within complex data structures. The deletion operation specifically tests whether you can maintain structural integrity while removing nodes without breaking shared prefixes, revealing your ability to write production-ready code that handles subtle memory management scenarios.

Hard
Microsoft
71

Disjoint Set Union (Union-Find) Implementation

Adobe evaluates candidates on their ability to design efficient algorithms for graph connectivity problems, common in image processing and layout engines. This question tests deep understanding of amortized analysis, memory optimization, and the capacity to implement complex data structures with specific optimizations like path compression and union by rank under pressure.

Hard
Adobe
72

Remove Invalid Parentheses (BFS)

Google asks this question to evaluate a candidate's mastery of graph traversal algorithms, specifically Breadth-First Search, in unstructured string spaces. It tests the ability to handle exponential search trees efficiently while minimizing operations. Interviewers look for candidates who can balance correctness with performance, ensuring they find all valid solutions without redundant computations or infinite loops.

Hard
Google
73

Design a Word Filter (Prefix/Suffix Search)

Uber asks this to evaluate a candidate's ability to optimize for both time and space complexity in real-world search scenarios. They specifically test if you can design a data structure that handles bidirectional constraints efficiently, moving beyond basic linear scans to advanced tree manipulations or suffix-prefix combinations.

Hard
Uber
74

Maximum Frequency Stack

Salesforce asks this to evaluate your ability to balance time complexity against space complexity while managing multiple constraints. They specifically test if you can design a system that handles dynamic frequency updates and tie-breaking logic efficiently, mirroring real-world scenarios where data access patterns shift rapidly.

Hard
Salesforce
75

Binary Tree Maximum Path Sum

Meta asks this to evaluate a candidate's mastery of recursive tree traversal and their ability to distinguish between local path sums and global maximums. It tests if you can handle the complexity where a single node might serve as a peak, connecting two subtrees, rather than just extending a single path downward.

Hard
Meta
76

Implement an LRU Cache

Google asks this to evaluate your mastery of hybrid data structures and ability to optimize for strict time complexity constraints. They specifically test if you understand how to combine a Hash Map for O(1) lookups with a Doubly Linked List for O(1) reordering, ensuring you can design systems that handle high-frequency cache invalidation efficiently.

Hard
Google
77

Find K Closest Elements (Heaps)

Meta interviewers ask this to evaluate your ability to optimize for time complexity while managing dynamic data constraints. They specifically test if you can balance the O(n log k) heap approach against binary search, ensuring you understand when a priority queue is the superior tool for maintaining a sliding window of top-k elements in a sorted dataset.

Medium
Meta
78

Evaluate Reverse Polish Notation (Stack)

Spotify engineers frequently ask this to assess your mastery of stack data structures and your ability to handle edge cases in parsing logic. It evaluates whether you can translate a mathematical concept into an efficient algorithm without relying on built-in recursion or complex parsers. They specifically look for candidates who understand time complexity O(n) and space constraints while processing token streams.

Medium
Spotify
79

Smallest Subtree with all the Deepest Nodes

Meta interviewers use this problem to assess a candidate's mastery of tree recursion and depth-first search. It specifically tests the ability to handle post-order traversal logic where a node's value depends on its children's return values. The question evaluates if you can efficiently compute depths and identify the Lowest Common Ancestor without redundant traversals, demonstrating strong algorithmic optimization skills.

Medium
Meta
80

Design a Max Heap

Google interviewers ask this to evaluate your ability to translate abstract data structure theory into efficient, bug-free code under pressure. They specifically test your understanding of the heap property, array indexing math (parent/child relationships), and your capacity to implement O(log n) operations like swim and sink without relying on built-in libraries.

Medium
Google
81

Design a Graph for Social Networking

Interviewers at Meta ask this to evaluate your ability to translate real-world social dynamics into efficient data structures. They assess whether you understand how nodes and edges represent users and interactions, and if you can optimize for specific queries like finding mutual friends or detecting communities without incurring excessive memory overhead.

Medium
Meta
82

Design a Doubly Linked List with Head and Tail

Microsoft interviewers use this question to evaluate a candidate's mastery of pointer manipulation and edge case handling in low-level data structures. They specifically assess your ability to maintain list integrity when modifying head or tail references simultaneously. This tests logical rigor, attention to detail, and whether you can implement complex state transitions without causing null pointer exceptions or memory leaks.

Medium
Microsoft
83

Design a Distributed Unique ID Generator

Interviewers ask this to evaluate your ability to design scalable systems that avoid central bottlenecks. At Tesla, where millions of vehicles generate data simultaneously, they need engineers who understand how to distribute state safely without coordination. This tests your grasp of atomic operations, concurrency safety, and efficient data structure selection for high-throughput environments.

Medium
Tesla
84

Design a Snake Game (Optimal Data Structure)

Salesforce asks this to evaluate your ability to select data structures that balance memory efficiency with access speed. They specifically test if you recognize that a simple array fails for frequent insertions and deletions, while a hash set is essential for O(1) collision detection. This question reveals whether you can design systems where performance constraints are critical, mirroring the high-throughput nature of enterprise cloud platforms.

Medium
Salesforce
85

Number of Operations to Make Network Connected (Union-Find)

Salesforce interviewers ask this to evaluate a candidate's ability to model real-world connectivity problems using Disjoint Set Union (DSU) data structures. They specifically test whether you can identify that redundant edges are the key resource for connecting isolated components, rather than just counting total connections.

Medium
Salesforce
86

Kth Largest Element in an Array (Quickselect/Heap)

Google interviewers ask this to evaluate your ability to optimize for time complexity beyond brute force. They specifically test if you can choose between Quickselect's average O(n) performance and a Min-Heap's O(n log k) trade-off based on input size. This reveals your depth in partitioning logic, edge case handling, and understanding when to prioritize space versus time efficiency.

Medium
Google
87

Binary Tree Inorder Traversal (Iterative)

Microsoft evaluates this question to assess a candidate's mastery of recursion versus iteration and their ability to manage state manually. They specifically test if you understand the call stack mechanism by implementing it explicitly with a heap-allocated stack. This reveals your depth in Data Structures, problem-solving under constraints, and attention to edge cases like null nodes or skewed trees.

Medium
Microsoft
88

Maximum Number of Eaten Apples (Priority Queue)

Airbnb asks this problem to evaluate a candidate's ability to optimize resource allocation under strict temporal constraints. It specifically tests mastery of Priority Queues for greedy scheduling, as managing perishable inventory requires selecting the most urgent items first. The interviewer looks for candidates who can translate a real-world logistics challenge into an efficient algorithmic solution without over-engineering.

Medium
Airbnb
89

Check Completeness of a Binary Tree

Adobe evaluates this question to assess a candidate's ability to translate theoretical tree properties into efficient, production-ready code. They specifically look for mastery of Breadth-First Search (BFS) and the capacity to handle edge cases like null pointers or single-node trees without recursion overhead.

Medium
Adobe
90

Binary Tree Zigzag Level Order Traversal

Google interviewers ask this to evaluate your mastery of level-order traversal variations and your ability to manipulate data structures dynamically. They specifically test if you can adapt standard BFS logic to handle alternating directions without resorting to inefficient post-processing or excessive memory usage. It reveals your understanding of queue versus stack mechanics and how to optimize for O(N) time complexity with minimal space overhead.

Medium
Google
91

Implement a Deque (Double-Ended Queue)

IBM interviewers ask this to evaluate your ability to choose the optimal data structure based on constraints. They specifically test your understanding of memory management, pointer manipulation in linked lists, or index arithmetic in circular arrays. This reveals how you handle edge cases like empty queues and whether you can balance time complexity against space efficiency.

Medium
IBM
92

Design a Data Structure for Stock Prices (Heaps)

Interviewers at Netflix ask this to evaluate your ability to balance time complexity constraints with memory efficiency. They specifically test if you understand that standard heaps offer O(log n) operations, and whether you can engineer a hybrid approach using a hash map to achieve the requested O(1) lookups for current prices while maintaining heap properties for min/max retrieval.

Medium
Netflix
93

Trie (Prefix Tree) Implementation

Google interviewers ask this to evaluate your ability to design efficient, space-optimized data structures for string-heavy workloads. They specifically test if you can balance time complexity against memory usage, as Tries are crucial for autocomplete and search features. This question reveals your understanding of pointer manipulation, edge cases in tree traversal, and whether you prioritize algorithmic efficiency over brute-force solutions.

Medium
Google
94

Design a Snake Game (2D Array/Queue)

Netflix evaluates candidates on their ability to translate real-world logic into efficient, scalable data structures. This question tests your grasp of grid-based state management and queue operations. They specifically look for how you handle dynamic list updates like snake growth without unnecessary memory allocation or O(N) shifts, which mirrors the performance demands of streaming systems.

Medium
Netflix
95

Implement a Min Stack

Apple interviewers prioritize engineers who optimize for both time and space efficiency while maintaining code clarity. This question evaluates your ability to balance O(1) retrieval constraints with auxiliary storage trade-offs. It specifically tests your understanding of stack mechanics, edge case handling like duplicate minimums, and your capacity to design robust data structures under strict performance requirements.

Medium
Apple
96

Design a Phone Directory (Linked List/Array)

Stripe evaluates candidates on their ability to balance memory efficiency with constant-time operations in resource-constrained environments. This question tests your understanding of trade-offs between array-based indexing for O(1) access versus linked list flexibility, specifically focusing on how to manage sparse data sets like phone numbers without wasting excessive memory while ensuring fast reservation and release cycles.

Medium
Stripe
97

Check if Linked List is a Palindrome

Cisco evaluates this question to assess a candidate's ability to optimize space complexity while manipulating linear data structures. They specifically look for mastery of pointer manipulation, the capacity to modify lists in-place without using auxiliary storage like arrays or stacks, and the logical rigor required to handle edge cases such as single nodes or even-length lists.

Medium
Cisco
98

Design a Set with $O(1)$ `insert`, `remove`, and `getRandom`

Google interviewers ask this to evaluate your ability to balance time and space complexity trade-offs. They specifically test if you understand that Arrays provide O(1) random access while Hash Maps offer O(1) lookups, but neither alone supports efficient removal from the middle without shifting elements or scanning. This question probes your depth in combining data structures to solve constraints that a single structure cannot handle.

Medium
Google
99

Shortest Distance to Target Color (Preprocessing)

Interviewers at LinkedIn ask this to evaluate your ability to optimize time complexity through preprocessing. They want to see if you recognize that repeated queries on the same dataset require O(1) lookups rather than O(N) scans per query, demonstrating practical knowledge of space-time trade-offs and efficient data structure selection.

Medium
LinkedIn
100

Design a Twitter Feed (Conceptual Data Storage)

Interviewers ask this to evaluate your ability to design scalable data systems that handle massive write-throughput. Specifically, they test if you understand the trade-offs between fan-out-on-write and fan-out-on-read models when serving billions of users with low latency requirements.

Medium
Microsoft
101

Design a Simple ERP System Data Model

Interviewers at Salesforce ask this to evaluate your ability to translate complex business logic into normalized, scalable relational schemas. They specifically assess if you can identify core entities like Customers, Orders, and Inventory, and define precise one-to-many relationships. This tests your understanding of data integrity constraints and how a unified system manages interconnected workflows critical to CRM and ERP environments.

Medium
Salesforce
102

Kth Smallest Element in a BST

Meta interviewers ask this to evaluate your ability to leverage specific data structure properties rather than relying on brute force. They want to see if you recognize that an in-order traversal of a Binary Search Tree yields sorted values, allowing for an O(N) or O(H) solution depending on implementation. This tests your depth of understanding regarding tree mechanics and your skill in optimizing space complexity through recursion or iteration.

Medium
Meta
103

Design a Phone Directory (Set/Trie)

Stripe evaluates this question to assess a candidate's ability to balance space-time trade-offs in real-world resource management. They specifically look for how you optimize frequent read operations against dynamic allocation patterns, testing your grasp of hash sets versus tries and your capacity to design systems that handle high-throughput number reservation without collisions.

Medium
Stripe
104

Longest Consecutive Sequence (Set)

Interviewers at Uber ask this to evaluate your ability to optimize for time complexity beyond standard sorting. They specifically test if you can recognize that O(n log n) solutions are insufficient and identify the pattern where a Hash Set allows O(1) lookups. This assesses your depth in data structures, your capacity to handle unsorted inputs efficiently, and your skill in avoiding redundant processing during sequence traversal.

Medium
Uber
105

Implement a Circular Buffer/Ring Buffer

Apple interviewers ask this to evaluate your mastery of low-level memory management and pointer arithmetic. They specifically test if you can handle edge cases like buffer wrap-around without using expensive array shifts or excessive conditional logic. This assesses your ability to write efficient, constant-time algorithms that mirror the performance-critical systems Apple builds daily.

Medium
Apple
106

Flatten Binary Tree to Linked List (In-place)

Amazon interviewers ask this to evaluate your mastery of pointer manipulation and in-place algorithmic optimization. They specifically test if you can transform complex tree structures into linear lists without allocating extra memory, a skill critical for high-performance systems. This problem also assesses your ability to handle recursive logic while managing edge cases like null pointers and ensuring the right pointer correctly links nodes in preorder sequence.

Medium
Amazon
107

Design a System for Autocomplete (Trie)

Tesla evaluates candidates on their ability to optimize real-time performance for user-facing features like search and navigation. This question tests your mastery of the Trie data structure, specifically how to balance memory efficiency with O(k) lookup speed. They want to see if you can handle prefix matching logic while considering edge cases like caching or frequency sorting, which mirrors Tesla's focus on seamless software experiences.

Medium
Tesla
108

Implement a Circular Linked List

Amazon asks this to evaluate your mastery of pointer manipulation and edge-case handling, core competencies for their backend engineering roles. They specifically want to see if you understand memory management nuances and can optimize traversal logic without creating infinite loops or null reference errors during insertion and deletion.

Medium
Amazon
109

Balanced Parentheses (Generative)

Google interviewers use this problem to evaluate a candidate's mastery of recursion, backtracking logic, and constraint management. It tests the ability to visualize state transitions (open vs. close counts) without relying on brute force. Specifically, they assess whether you can prune invalid branches early to optimize time complexity, a critical skill for building scalable systems.

Medium
Google
110

Design a Compressed String Iterator (Advanced)

Stripe evaluates this question to assess a candidate's ability to optimize space complexity while maintaining efficient time complexity in iterator design. They specifically look for understanding of run-length encoding edge cases, such as multi-digit numbers and empty strings, and the capacity to implement stateful logic without reconstructing the entire string in memory.

Medium
Stripe
111

Flatten a Multilevel Doubly Linked List (Stack)

IBM evaluates this question to assess a candidate's mastery of pointer manipulation and recursive thinking in complex data structures. It specifically tests the ability to manage state transitions using an explicit stack, ensuring candidates can handle non-linear linked list topologies without causing memory leaks or infinite loops.

Medium
IBM
112

Lowest Common Ancestor of a Binary Tree

Apple interviewers ask this to evaluate your ability to traverse tree structures recursively and handle edge cases without relying on built-in libraries. They specifically test your understanding of parent-child relationships, base case identification, and the logic required to backtrack up a call stack. This problem reveals whether you can design an optimal O(n) solution while maintaining code clarity under pressure.

Medium
Apple
113

Convert Sorted Array to BST (Recursive)

Meta evaluates this question to assess a candidate's mastery of divide-and-conquer strategies and recursive thinking. Interviewers specifically look for the ability to translate mathematical concepts like array indexing into efficient tree structures while maintaining O(log n) height balance. It tests whether you can optimize space complexity by avoiding unnecessary data copying and handle edge cases in recursive base conditions.

Medium
Meta
114

Remove Duplicates from Sorted List II

Amazon interviewers ask this to evaluate a candidate's mastery of pointer manipulation and edge case handling in linked lists. Unlike simple duplicate removal, this variant requires deleting all instances of duplicates, testing the ability to manage complex node connections without losing the list structure. It specifically assesses attention to detail, as missing boundary conditions like head or tail nodes often leads to subtle bugs that Amazon values engineers must avoid.

Medium
Amazon
115

Remove Zero Sum Consecutive Nodes from Linked List

Amazon asks this question to evaluate a candidate's mastery of prefix sums and hash map utilization for optimizing linked list traversals. It tests the ability to identify redundant computations and solve complex in-place manipulation problems with O(N) time complexity, reflecting their leadership principle of 'Insist on the Highest Standards' through algorithmic efficiency.

Medium
Amazon
116

Implement a Generic Graph Structure

Stripe evaluates this question to assess a candidate's ability to translate abstract graph theory into robust, type-safe production code. They specifically look for proficiency in generic programming patterns, memory management strategies within adjacency lists, and the logical rigor required to handle edge cases like self-loops or duplicate edges in financial network modeling.

Medium
Stripe
117

Design a Graph for Geospatial Data

Interviewers at Oracle ask this to evaluate your ability to model real-world spatial problems using abstract data structures. They assess whether you understand the limitations of standard adjacency lists for geospatial data and can propose optimized solutions like R-trees or QuadTrees for efficient nearest-neighbor queries. It tests your practical application of graph theory in large-scale, distributed systems typical of enterprise environments.

Medium
Oracle
118

Flatten a Multilevel Doubly Linked List

Google interviewers ask this to evaluate a candidate's mastery of pointer manipulation and recursive thinking within complex data structures. They specifically test your ability to handle edge cases like nested children while maintaining strict doubly linked list invariants. This problem reveals whether you can manage stack depth, memory references, and traversal logic without corrupting the original structure.

Medium
Google
119

Design a Snake Game (Queue and Set)

Stripe evaluates candidates on their ability to design efficient, stateful systems where performance is critical. This question tests your understanding of how to maintain dynamic sequences with constant-time lookups. It specifically assesses whether you can combine a Queue for ordered body tracking with a Hash Set for O(1) collision detection, avoiding the O(N) scan that would cause lag in real-time applications.

Medium
Stripe
120

Shortest Path in Binary Matrix (BFS)

LinkedIn asks this to evaluate a candidate's mastery of graph traversal algorithms in constrained environments. They specifically test if you recognize that unweighted shortest path problems require Breadth-First Search (BFS) rather than Dijkstra or DFS. The binary matrix constraint checks your ability to handle grid-based adjacency and boundary conditions efficiently.

Medium
LinkedIn
121

Reorder List

Microsoft asks this to evaluate a candidate's mastery of pointer manipulation and in-place algorithm design. It tests the ability to decompose complex logic into manageable sub-problems: finding the middle, reversing a sublist, and merging two lists without allocating extra memory. Interviewers specifically look for candidates who can handle edge cases like null pointers or single-node lists while maintaining O(1) space complexity.

Medium
Microsoft
122

Design a Time Map (TreeMap/Sorted Map)

Google asks this to evaluate your ability to balance time complexity with space efficiency in real-world scenarios. They specifically test if you can design a hybrid structure combining hash maps for O(1) key access and sorted lists or binary search for timestamp queries, demonstrating mastery of data organization under strict performance constraints.

Medium
Google
123

Connect Next Pointers in Perfect Binary Tree

Netflix evaluates candidates on their ability to optimize memory usage and traverse tree structures without recursion overhead. This question tests if you can leverage the perfect binary tree property to achieve O(1) space complexity, a critical skill for high-performance streaming infrastructure where memory efficiency impacts latency.

Medium
Netflix
124

Convert BST to Greater Tree

Google interviewers ask this to evaluate a candidate's ability to optimize standard tree traversals. They specifically look for the insight that reverse in-order traversal allows calculating cumulative sums in a single pass without extra space, testing deep understanding of BST properties and algorithmic efficiency over brute-force solutions.

Medium
Google
125

Clone Graph

Salesforce interviewers ask this to evaluate a candidate's mastery of graph traversal algorithms and memory management. They specifically test your ability to handle cycles in undirected graphs without creating infinite loops, while ensuring a true deep copy rather than a shallow reference. This assesses your understanding of HashMap usage for state tracking and your capacity to write clean, production-ready code under pressure.

Medium
Salesforce
126

Implement a Min Heap

Cisco evaluates candidates on their ability to manage priority-based data efficiently for networking tasks like packet scheduling. This question tests deep understanding of array-based tree indexing, recursive logic, and time complexity analysis. It reveals if you can translate abstract heap properties into concrete, bug-free code under pressure.

Medium
Cisco
127

Delete Node in a BST

Amazon asks this to evaluate a candidate's mastery of tree recursion and edge-case handling under pressure. They specifically test if you understand BST invariants while managing complex pointer manipulations. The question reveals your ability to decompose a multi-step logic problem into distinct cases, ensuring structural integrity without excessive memory usage.

Medium
Amazon
128

Implement a Graph (Adjacency Matrix)

Interviewers at Airbnb ask this to evaluate your ability to select appropriate data structures for specific constraints. They want to see if you understand the trade-offs between space and time complexity, specifically how an adjacency matrix handles dense graphs versus sparse ones. This tests your foundational knowledge of graph algorithms and your capacity to implement robust, error-free code under pressure.

Medium
Airbnb
129

Binary Tree Right Side View

Uber interviewers ask this to evaluate a candidate's ability to traverse hierarchical data structures efficiently while managing state across levels. It tests if you understand the difference between BFS and DFS trade-offs, specifically regarding space complexity and level-order processing. They want to see if you can translate a visual spatial problem into an algorithmic solution that handles edge cases like skewed trees without unnecessary overhead.

Medium
Uber
130

Word Search (Trie & Backtracking)

Uber interviewers ask this to evaluate your ability to model grid problems as graph traversals and implement efficient backtracking with pruning. They specifically test if you can optimize naive solutions by avoiding redundant work, a critical skill for handling large-scale location data or routing algorithms where performance directly impacts user experience.

Medium
Uber
131

Implement a Dynamic Multiset/Bag

Apple evaluates this question to assess your ability to handle stateful data structures with edge cases, a critical skill for iOS and backend systems. They specifically look for your understanding of time complexity trade-offs when managing duplicates. The interviewer wants to see if you can design an efficient solution that balances space usage against O(1) lookup performance, reflecting Apple's focus on high-performance, resource-conscious engineering.

Medium
Apple
132

Time-Based Key-Value Store

Apple evaluates this question to assess a candidate's ability to design efficient data structures that balance read and write performance. It specifically tests understanding of hash maps for O(1) lookups combined with sorted collections or binary search for time-based retrieval. Interviewers want to see if you can handle temporal constraints while optimizing for the 'largest timestamp less than or equal' requirement without degrading system throughput.

Medium
Apple
133

Design a Stock Price Fluctuation Tracker

Interviewers at Spotify ask this to evaluate your ability to optimize for real-time data consistency under strict latency constraints. They specifically test if you can balance memory efficiency with speed, ensuring you understand that standard sorting is too slow for live financial feeds. This question probes your mastery of heap properties and lazy deletion techniques to solve the 'stale node' problem in dynamic datasets.

Medium
Spotify
134

Design a Twitter Feed (Sorted Set/Time Series)

Interviewers ask this to evaluate your ability to model time-series data under extreme scale constraints. They specifically want to see if you understand the trade-offs between push and pull architectures for news feeds, how Redis Sorted Sets handle ranking by timestamp, and your skill in optimizing read-heavy workloads for billions of records.

Medium
Meta
135

Shortest Unsorted Continuous Subarray (Array/Pointers)

Google interviewers ask this to assess your ability to optimize beyond brute force. They evaluate if you can identify edge cases where sorting the entire array is inefficient. The problem tests your mastery of two-pointer techniques and your skill in analyzing time complexity, specifically distinguishing between O(n log n) sorting approaches versus optimal O(n) linear scans.

Medium
Google
136

Design a Set of Stacks (Capacity Limit)

Stripe engineers value systems that handle data integrity under pressure. This question tests your ability to model real-world constraints where a single buffer cannot hold infinite items. They evaluate your grasp of dynamic memory management, edge case handling like popping from an empty set, and your capacity to design modular components that scale efficiently without complex dependencies.

Medium
Stripe
137

Implement a Priority Queue using a Heap

Microsoft interviewers ask this to verify your deep understanding of memory-efficient data structures and algorithmic efficiency. They evaluate if you can translate abstract requirements into a concrete implementation using heap properties. The focus is on your ability to maintain the heap invariant during dynamic updates, ensuring O(log n) performance for critical operations like scheduling or pathfinding tasks common in their systems.

Medium
Microsoft
138

Implement a Queue using a Circular Array

Microsoft interviewers ask this to evaluate your mastery of low-level memory management and pointer arithmetic without relying on built-in libraries. They specifically test if you can handle edge cases in a fixed-size buffer, such as distinguishing between an empty and full queue when using modulo arithmetic. This question reveals whether you understand the trade-offs between space efficiency and implementation complexity in performance-critical systems.

Medium
Microsoft
139

Design a Compressed String Iterator

Stripe asks this to evaluate a candidate's ability to handle stateful iteration over compressed data efficiently without loading the entire string into memory. It tests understanding of pointers, loop invariants, and edge cases like multi-digit counts or empty inputs. The problem specifically probes whether you can design an O(1) amortized solution that balances time complexity with space constraints, a critical skill for high-throughput payment systems.

Medium
Stripe
140

Design a Calendar Scheduling System (Set/Map)

Salesforce interviewers ask this to evaluate your ability to translate real-world constraints into efficient data structures. They specifically test your understanding of interval management, time complexity trade-offs between insertion and lookup, and whether you can design a system that scales as meeting volumes grow in their CRM ecosystem.

Medium
Salesforce
141

Reverse a Linked List

Google uses this classic problem to assess a candidate's mastery of pointer manipulation and memory management fundamentals. It evaluates whether you can traverse a data structure without auxiliary space, handle edge cases like null pointers or single-node lists, and think logically about state transitions in an iterative or recursive manner.

Medium
Google
142

Find Subtree with Maximum Average

Meta interviewers ask this to evaluate a candidate's ability to traverse complex tree structures efficiently while maintaining state across recursive calls. They specifically test whether you can optimize for both time and space complexity, avoiding redundant calculations by combining subtree sum and node count in a single post-order traversal pass.

Medium
Meta
143

Boundary of Binary Tree

Oracle evaluates this question to assess a candidate's mastery of tree traversal algorithms and their ability to handle complex edge cases without duplicating nodes. It specifically tests logical reasoning in defining overlapping boundaries, such as distinguishing between the leftmost path and leaf nodes, which requires precise state management during recursion.

Medium
Oracle
144

Design a Sparse Vector/Matrix

Stripe values engineering excellence and efficiency in handling massive scale data. This question evaluates your ability to optimize space complexity by avoiding unnecessary zero storage, a critical skill for their payment infrastructure. It also tests your understanding of time-space trade-offs when implementing arithmetic operations like dot products on real-world sparse datasets.

Medium
Stripe
145

Validate Binary Search Tree

Meta evaluates this question to assess a candidate's ability to handle range constraints beyond simple local comparisons. Interviewers look for deep understanding of tree traversal, recursion limits, and the capacity to maintain state across nested calls without relying on global variables.

Medium
Meta
146

Count Complete Tree Nodes (Optimized)

Microsoft interviewers ask this to evaluate if candidates can leverage specific data structure properties rather than applying brute-force solutions. They assess your ability to analyze tree depth, recognize the definition of a complete binary tree, and optimize time complexity from O(N) to O(log² N). This tests algorithmic efficiency and deep understanding of binary heap structures.

Medium
Microsoft
147

Binary Tree Preorder Traversal (Iterative)

Uber engineers frequently ask this to assess your mastery of non-recursive data manipulation. They want to see if you understand the underlying call stack mechanism and can manage memory efficiently without relying on implicit recursion. It tests your ability to simulate system behavior using explicit data structures, a critical skill for building high-performance, scalable backend services.

Medium
Uber
148

Course Schedule (Adjacency List & BFS)

Cisco evaluates this question to assess a candidate's ability to model real-world dependency systems as directed graphs. They specifically test proficiency in choosing the right data structure, an adjacency list, and implementing Kahn's algorithm for topological sorting via BFS. This demonstrates logical reasoning regarding cycle detection and handling edge cases in complex scheduling scenarios.

Medium
Cisco
149

Top K Frequent Elements (Heap/Bucket Sort)

Netflix values engineers who optimize for scale and latency. This question tests your ability to move beyond naive sorting, demonstrating mastery of frequency analysis. They specifically want to see if you can implement O(n) or O(n log k) solutions using heaps or buckets, proving you understand trade-offs between time complexity and space efficiency in high-throughput data environments.

Medium
Netflix
150

Design a Logger Rate Limiter

Meta asks this to evaluate your ability to optimize space-time trade-offs in high-throughput systems. They specifically test if you can select the right data structures—Hash Maps for O(1) lookups and Hash Sets for deduplication—to solve rate-limiting constraints efficiently without blocking the main thread or consuming excessive memory.

Medium
Meta
151

Implement a Stack using Queues

Tesla interviewers ask this to evaluate a candidate's deep understanding of fundamental data structures and their ability to translate abstract constraints into concrete logic. They specifically test if you can simulate LIFO behavior using FIFO primitives, revealing your grasp of time complexity trade-offs and algorithmic creativity under pressure.

Medium
Tesla
152

Design a File System (Hash Map and Set)

Amazon asks this question to evaluate a candidate's ability to select appropriate data structures for specific constraints and to demonstrate clear communication of trade-offs. They are testing if you can efficiently handle path-based lookups while managing memory, ensuring the solution scales logically without unnecessary complexity.

Medium
Amazon
153

Design a File System (Trie variant)

Salesforce evaluates this question to assess a candidate's ability to model hierarchical data structures efficiently. They specifically look for proficiency in Trie implementation, path validation logic, and the trade-offs between space complexity and lookup speed when designing systems that manage nested resources like files or configuration trees.

Medium
Salesforce
154

Convert Sorted Array to Binary Search Tree

Amazon asks this question to evaluate a candidate's mastery of divide-and-conquer strategies and their ability to implement recursive algorithms efficiently. Interviewers specifically look for the understanding that a sorted array allows for O(log n) tree height by always selecting the middle element as the root, ensuring the resulting Binary Search Tree is height-balanced.

Medium
Amazon

Ready to practice data structures questions?

Get AI-powered feedback on your answers with our mock interview simulator.

Start Free Practice