Dropbox Coding Interview Questions
28 Dropbox coding interview problems with full optimal solutions — 16 easy, 10 medium, 2 hard. Every problem ships with multiple approaches (brute-force first, then the optimal), complexity tables for each, company-specific tips on what an Dropbox interviewer values, and a FAQ section.
Showing 28 problems of 28
- #16mediumfoundational
16. LRU Cache
Design a fixed-capacity cache that evicts the least-recently-used entry — Dropbox's sync engine relies on this exact policy to keep hot file metadata in memory without blowing heap budgets.
- #17easyfoundational
17. Longest Common Prefix
Find the longest prefix shared by every string in an array — Dropbox uses this pattern when collapsing shared directory prefixes to avoid redundant metadata transfers during a sync pass.
- #18mediumfoundational
18. Number of Islands
Count distinct connected regions in a binary grid — Dropbox draws on this pattern when resolving which file clusters have been independently modified across disconnected clients during a conflict sweep.
- #19mediumfoundational
19. Meeting Rooms II
Find the minimum number of conference rooms needed for a set of meetings — Dropbox maps this directly to how many concurrent file-version locks the sync layer must hold at peak conflict time.
- #20mediumfoundational
20. Implement Trie (Prefix Tree)
Build a prefix tree that supports insert, search, and startsWith — Dropbox uses a trie variant to power instant path-autocomplete in the desktop client as you type a destination folder.
- #21hardfoundational
21. Edit Distance
Compute the minimum edits to transform one string into another — this is the theoretical backbone of Dropbox's diff-and-merge pipeline, used to reconcile two independently edited versions of a plain-text file.
- #22hardfoundational
22. Serialize and Deserialize Binary Tree
Convert a binary tree to a string and back without losing structure — Dropbox uses an analogous serialization format to persist its file-system snapshot trees to disk for offline access and crash recovery.
- #23mediumfoundational
23. Find All Anagrams in a String
Find every start index where a permutation of a pattern appears in a string — Dropbox applies the sliding-window frequency technique when scanning file content for duplicate chunks during deduplication.
- #24mediumfoundational
24. Longest Increasing Subsequence
Find the length of the longest strictly increasing subsequence — Dropbox uses a variant of this algorithm when identifying the longest sequence of non-conflicting file versions to establish a clean merge baseline.
- #25mediumfoundational
25. Flatten Nested List Iterator
Build a lazy iterator that traverses a recursive list structure depth-first — Dropbox engineers recognize this pattern immediately as a model for walking a nested folder hierarchy without loading all entries into memory at once.
- #26mediumfoundational
26. Group Anagrams
Cluster strings that are anagrams of each other into groups — Dropbox applies content-addressable hashing for the same reason: two files with identical byte-frequency fingerprints are dedup candidates regardless of filename.
- #27mediumfoundational
27. Word Search
Determine whether a word exists by tracing adjacent cells in a 2D grid — Dropbox maps this to path-finding in a file-system graph where each directory is a cell and you must navigate without revisiting a node.
- #28mediumfoundational
28. Top K Frequent Elements
Return the k most frequently occurring integers from an array — Dropbox uses frequency ranking to surface the most-accessed file types in a user's account, driving smart sync-priority decisions.
- #1easyfoundational
1. Two Sum
Find two indices whose values sum to a target; the canonical hash-map warm-up Dropbox uses to gauge baseline fluency.
- #2easyfoundational
2. Valid Parentheses
Determine if a string of brackets is balanced; Dropbox uses this to probe stack reasoning for nested file-tree path parsing.
- #3easyfoundational
3. Merge Two Sorted Lists
Merge two sorted linked lists into one sorted list; Dropbox uses it as a stand-in for merging two sorted delta streams from different clients.
- #4easyfoundational
4. Remove Duplicates from Sorted Array
Compact a sorted array in place; Dropbox uses it to probe two-pointer fluency for dedup passes over chunk-hash manifests.
- #5easyfoundational
5. Remove Element
Remove all occurrences of a value in place; Dropbox uses it to test in-place compaction patterns relevant to garbage-collecting stale chunk references.
- #6easyfoundational
6. Search Insert Position
Return the index where a target belongs in a sorted array; Dropbox uses it to probe binary-search hygiene for sorted chunk-offset lookups.
- #7easyfoundational
7. Plus One
Increment a big-integer represented as a digit array; Dropbox uses it to probe carry-propagation logic for monotonically increasing version counters.
- #8easyfoundational
8. Merge Sorted Array
Merge two sorted arrays in place into the first; Dropbox uses it as a stand-in for merging local-edit and server-edit sequences during reconciliation.
- #9easyfoundational
9. Binary Tree Inorder Traversal
Return the inorder traversal of a binary tree; Dropbox uses it to probe iterative-tree fluency for walking nested folder hierarchies.
- #10easyfoundational
10. Same Tree
Determine if two binary trees are identical in structure and values; Dropbox uses it as a primer for comparing two file-tree snapshots during sync.
- #11easyfoundational
11. Symmetric Tree
Decide whether a binary tree is a mirror of itself; Dropbox uses it to probe pair-pointer recursion patterns that show up in symmetric chunk verification.
- #12easyfoundational
12. Maximum Depth of Binary Tree
Compute the maximum depth of a binary tree; Dropbox uses it as a primer for bounding recursion depth on deeply nested folder trees in user accounts.
- #13easyfoundational
13. Balanced Binary Tree
Decide whether a binary tree is height-balanced; Dropbox uses it to probe single-pass DFS technique applicable to validating sync-tree invariants.
- #14easyfoundational
14. Minimum Depth of Binary Tree
Find the shortest root-to-leaf path length; Dropbox uses it to test BFS-vs-DFS choice for early-termination tree searches in their sync metadata layer.
- #15easyfoundational
15. Pascal's Triangle
Generate the first numRows of Pascal's Triangle; Dropbox uses it as a primer for building up tabulated state, a pattern that recurs in their hash-tree calculations.