Skip to main content

DoorDash Coding Interview Questions

32 DoorDash coding interview problems with full optimal solutions — 3 easy, 21 medium, 8 hard. Every problem ships with multiple approaches (brute-force first, then the optimal), complexity tables for each, company-specific tips on what an DoorDash interviewer values, and a FAQ section.

Showing 32 problems of 32

  • #21easyfoundational

    21. Number of Islands

    Count connected land zones in a grid — Doordash uses this BFS/DFS classic to see if you can reason about delivery coverage zones and autonomous map-segmentation logic under time pressure.

  • #22easyfrequently asked

    22. Merge Intervals

    Collapse a pile of possibly-overlapping intervals into the minimal set of disjoint spans — the canonical sort-then-sweep greedy, and one of the most practically-loaded easies in the catalog. DoorDash candidates report it with the scheduling flavor played straight: delivery time windows and Dasher shift blocks ARE interval merges, and the interview's real currency is naming the pattern (sort by start, then one linear pass extending or appending) before any code appears.

  • #23easyfoundational

    23. Valid Parentheses

    Validate bracket nesting with a stack — Doordash treats this as a warmup for stack reasoning, which surfaces in their order-processing pipeline and nested-menu parsing logic.

  • #24mediumfoundational

    24. Network Delay Time

    Find the minimum time a signal takes to reach all nodes in a weighted graph — Doordash maps this directly to Dijkstra delivery-routing: how long until every zone gets its first Dasher signal.

  • #25mediumfoundational

    25. Meeting Rooms II

    Find the minimum number of concurrent resources to cover all intervals — Doordash applies this exact pattern to Dasher shift scheduling: how many active Dashers are needed at peak overlap?

  • #26mediumfoundational

    26. Design Hit Counter

    Build a counter that returns hits within a rolling 5-minute window — Doordash uses this real-time design pattern in their order-surge detection and Dasher-availability rate-limiting infrastructure.

  • #27mediumfoundational

    27. Jump Game

    Determine if you can traverse an array by jumping up to each cell's value — Doordash uses this greedy reachability pattern when modeling whether a Dasher can cover consecutive delivery zones given variable driving ranges.

  • #28mediumfoundational

    28. Coin Change

    Find the fewest coins to reach an exact amount — Doordash uses this DP pattern for delivery batch optimization: the minimum number of courier trips to fulfill an order backlog of a given volume.

  • #29mediumfoundational

    29. Subarray Sum Equals K

    Count contiguous subarrays whose values sum to a target — Doordash applies this prefix-sum hash-map technique to detect delivery batches that hit an exact revenue threshold in a stream of order values.

  • #30mediumfoundational

    30. Clone Graph

    Deep-clone an undirected connected graph — Doordash uses this graph-traversal pattern when replicating delivery zone topology across regional data centers for failover and load balancing.

  • #31hardfoundational

    31. Sliding Window Maximum

    Return the maximum value in each sliding window of size k — Doordash uses this deque pattern in their real-time demand forecasting: finding peak order rates over every rolling k-minute window to trigger Dasher surge dispatch.

  • #32hardfoundational

    32. Median of Two Sorted Arrays

    Find the median of two sorted arrays in O(log(m+n)) — Doordash uses binary-search-on-sorted-partition thinking in their real-time delivery ETA percentile calculations that must run in microseconds across millions of rows.

  • #15mediumfrequently asked

    15. 3Sum

    Given an integer array, return all unique triplets that sum to zero. DoorDash uses 3Sum as the canonical 'sort + two-pointer' problem — they want clean dedupe logic and the O(n^2) bound.

    3 free resourcesSolve →
  • #42hardcompany favorite

    42. Trapping Rain Water

    Given an elevation map, compute how much rainwater would be trapped. DoorDash uses this as a hard-end array problem — they want the two-pointer O(1) space optimization, not just the precomputed-max arrays version.

    3 free resourcesSolve →
  • #127hardfrequently asked

    127. Word Ladder

    Find the shortest transformation sequence from beginWord to endWord, changing one letter at a time and using only words in the dictionary. DoorDash leans on this for the BFS-on-implicit-graph pattern — they want to see the wildcard-key optimization on the adjacency lookup.

    3 free resourcesSolve →
  • #146mediumcompany favorite

    146. LRU Cache

    Design a cache that evicts the least recently used key when full. DoorDash asks this for backend SWE loops because logistics systems lean on LRU eviction for hot order/driver lookups — they want both get and put in O(1).

    3 free resourcesSolve →
  • #207mediumfrequently asked

    207. Course Schedule

    Given courses and prerequisites, determine if you can finish all courses. DoorDash uses this to test cycle detection in directed graphs — they want either DFS with white/gray/black coloring or Kahn's BFS topological sort.

    3 free resourcesSolve →
  • #210mediumfrequently asked

    210. Course Schedule II

    Given courses with prerequisites, return a valid ordering or an empty array if no ordering exists. DoorDash uses this as the Course Schedule follow-up — same cycle detection but you also output the topological order.

    3 free resourcesSolve →
  • #212hardfrequently asked

    212. Word Search II

    Given a board and a list of words, return all words that can be formed by traversing adjacent cells. DoorDash uses this as a Trie + DFS combination — they want the trie-traversal speedup that beats naive per-word DFS.

    3 free resourcesSolve →
  • #215mediumcompany favorite

    215. Kth Largest Element in an Array

    Find the kth largest element in an unsorted array. DoorDash uses this to test heap fluency AND the average-O(n) quickselect — they want both verbally, with quickselect coded if time allows.

    3 free resourcesSolve →
  • #218hardfrequently asked

    218. The Skyline Problem

    Given a list of buildings (left, right, height), return the skyline as key points. DoorDash uses this for senior infrastructure rounds — the sweep-line + max-heap pattern shows up in surge-pricing and capacity-window problems.

    3 free resourcesSolve →
  • #277mediumfrequently asked

    277. Find the Celebrity

    Given n people and a knows(a, b) API, find the celebrity — someone known by everyone but who knows nobody. DoorDash uses this to test whether you spot the O(n) elimination trick instead of the O(n^2) brute-force matrix check.

    3 free resourcesSolve →
  • #347mediumfrequently asked

    347. Top K Frequent Elements

    Given an integer array and k, return the k most frequent elements. DoorDash uses this as a hash + heap warm-up — they want you to discuss both the heap-based O(n log k) and the bucket-sort O(n) approaches.

    3 free resourcesSolve →
  • #380mediumfrequently asked

    380. Insert Delete GetRandom O(1)

    Design a data structure that supports insert, remove, and getRandom each in O(1) average. DoorDash uses this for backend rounds — they want the swap-with-last-then-pop trick that combines a hash map and an array.

    3 free resourcesSolve →
  • #416mediumfrequently asked

    416. Partition Equal Subset Sum

    Return true if the array can be partitioned into two subsets with equal sums. DoorDash uses this as a 0/1 knapsack disguised as a partition problem — they want the bottom-up DP that uses a boolean array.

    3 free resourcesSolve →
  • #528mediumfrequently asked

    528. Random Pick with Weight

    Given an array of weights, implement pickIndex() that returns an index in proportion to its weight. DoorDash uses this for backend rounds — weighted random sampling shows up in load balancing, driver assignment, and A/B test bucketing.

    3 free resourcesSolve →
  • #621mediumfrequently asked

    621. Task Scheduler

    Given tasks and a cooldown n, return the minimum CPU intervals needed. DoorDash uses this for backend scheduling rounds — the same shape appears in courier dispatch with cooldowns between assignments.

    3 free resourcesSolve →
  • #692mediumfrequently asked

    692. Top K Frequent Words

    Given an array of words and k, return the k most frequent strings sorted by frequency descending, then lexicographically ascending on ties. DoorDash uses this as the Top K Frequent Elements follow-up with the tie-breaker twist that catches careless candidates.

    3 free resourcesSolve →
  • #857hardfrequently asked

    857. Minimum Cost to Hire K Workers

    Hire exactly k workers so that each is paid at least their min-wage AND in proportion to their quality. Minimize total cost. DoorDash uses this for senior backend rounds — the dispatch and pricing problems have the same shape.

    3 free resourcesSolve →
  • #1091mediumfrequently asked

    1091. Shortest Path in Binary Matrix

    Find the length of the shortest clear path from top-left to bottom-right in a 0/1 grid, moving in 8 directions. DoorDash uses this as the canonical BFS-on-grid question — they want a clean queue with 8-directional moves, NOT DFS.

    3 free resourcesSolve →
  • #1192hardfrequently asked

    1192. Critical Connections in a Network

    Given an undirected graph, return all bridges — the edges whose removal disconnects the graph. DoorDash candidates report interviewers want Tarjan's bridge-finding algorithm by name, because a logistics network is exactly the kind of system where a single point of failure between zones matters; the question grades whether you can explain discovery times and low-link values, not whether you memorized the code.

    3 free resourcesSolve →

Related interview-prep guides

Interview Platforms

CodeSignal GCA for Tech Interviews in 2026: The Complete Guide

The CodeSignal General Coding Assessment is a 70-minute, four-task timed test scored on a 600 to 850 scale, used as a filter by Goldman Sachs, Capital One, Robinhood, Brex, and a growing list of tech and finance employers. This guide breaks down what it tests, how it scores, what it tracks during your session, and how a modern desktop setup pairs with it without showing up in proctored recordings.

Interview Platforms

CoderPad Live Coding Interview Guide (2026): What the Pad Tracks and How to Walk Through It Cleanly

CoderPad is the default live-coding environment for human-led technical interviews in 2026. Used by YC startups, FAANG-tier teams, and most of the tech mid-market. The pad records every keystroke, every paste event, every language switch, and offers an interviewer scrub-back feature most candidates never realize exists. This is what CoderPad tracks, how the live session compares to async assessments, and how a modern desktop AI setup pairs with it without showing up in the screen-share.

Interview Platforms

CodeInterview.io Live Coding Interview Guide (2026): What the Platform Tracks and How to Walk Through It Cleanly

CodeInterview.io is a browser-based collaborative live-coding platform. Think of it as a lighter-footprint alternative to CoderPad with an integrated video call, per-keystroke replay, and a drawing whiteboard. Smaller market share than CoderPad but shows up at a meaningful slice of YC startups and mid-market tech teams in 2026. This is what CodeInterview.io tracks, how its all-in-one workflow compares to CoderPad, and how a modern desktop AI setup pairs with it without showing up in the screen-share.

DoorDash Coding Interview Questions — Full Solutions — InterviewChamp.AI