Reddit Coding Interview Questions
100 Reddit coding interview problems with full optimal solutions — 34 easy, 52 medium, 14 hard. Every problem ships with multiple approaches (brute-force first, then the optimal), complexity tables for each, company-specific tips on what an Reddit interviewer values, and a FAQ section.
Showing 52 problems of 100
- #27mediumsometimes asked
27. House Robber
Maximize sum from non-adjacent array elements. Reddit asks this to test DP intuition — the same pattern used in their abuse system to select non-adjacent (non-similar) accounts when applying rate-limiting waves.
- #31mediumfrequently asked
31. Add Two Numbers
Add two big integers represented as linked lists (least-significant-digit first). Reddit asks this to test linked-list arithmetic with carry — the same kind of pointer-walking they use to merge cross-shard counter chunks.
- #32mediumfrequently asked
32. Longest Substring Without Repeating Characters
Find the longest substring without repeating characters. Reddit asks this to test sliding-window technique — the same pattern used to find the longest run of non-duplicate IPs hitting an endpoint (a fraud-detection primitive).
- #33mediumsometimes asked
33. Longest Palindromic Substring
Find the longest palindromic substring of a string. Reddit asks this to test expand-around-centers — the same pattern used in their similarity-detection between post titles (mirror-image substring matching for spam detection).
- #34mediumfrequently asked
34. Container With Most Water
Given heights, find the two lines that form the container holding the most water. Reddit uses this two-pointer problem to test greedy/monotone intuition — analogous to choosing the two endpoints of a time-window to maximize comment volume.
- #35mediumfrequently asked
35. 3Sum
Find all unique triplets that sum to zero. Reddit uses this to test sort + two-pointer + dedup — the same triple-key correlation used in their abuse-detection to find triple-coincidence patterns (IP + user-agent + timing).
- #36mediumsometimes asked
36. Letter Combinations of a Phone Number
Generate all letter combinations from a phone-keypad number string. Reddit uses this backtracking problem to test recursive enumeration — the same shape they'd use to enumerate all tag-permutations for ad targeting.
- #37mediumfrequently asked
37. Remove Nth Node From End of List
Remove the Nth-from-end node in a single pass. Reddit asks this to test the two-pointer-with-gap technique — the same windowed-walk used in their rate-limiter to expire the Nth-most-recent event.
- #38mediumsometimes asked
38. Generate Parentheses
Generate all combinations of n pairs of well-formed parentheses. Reddit uses this backtracking problem to test pruning skills — the same shape they'd use to enumerate valid markdown nesting structures during comment rendering.
- #39mediumsometimes asked
39. Swap Nodes in Pairs
Swap every two adjacent nodes in a linked list. Reddit asks this to test multi-pointer manipulation — the same pattern needed when re-ordering pairs of items in their ranked feed during an A/B test.
- #40mediumrarely asked
40. Next Permutation
Compute the lexicographically next permutation in-place. Reddit asks this rare problem to test in-place manipulation under a non-obvious algorithm — connects to enumerating moderator action sequences in their audit trail.
- #41mediumfrequently asked
41. Search in Rotated Sorted Array
Search for a target in a rotated sorted array in O(log n). Reddit asks this to test binary-search variants — the same skill used when their pagination cursor wraps around a sorted vote-timestamp index.
- #42mediumsometimes asked
42. Find First and Last Position of Element in Sorted Array
Find the first and last index of a target in a sorted array. Reddit asks this to test bound-based binary search — the same shape used when querying their time-bucketed vote logs for the range of events matching a timestamp.
- #43mediumrarely asked
43. Valid Sudoku
Determine if a 9x9 Sudoku board configuration is valid. Reddit uses this to test multi-key hash-set technique — the same shape used when validating that a moderator action is consistent across multiple constraint sets (subreddit + user + action).
- #44mediumsometimes asked
44. Combination Sum
Find all unique combinations of candidates that sum to target (with repetition). Reddit uses this to test backtracking — the same pattern they'd use to enumerate sets of moderation actions that combine to a desired outcome.
- #45mediumrarely asked
45. Combination Sum II
Find all unique combinations where each candidate is used at most once. Reddit uses this variant to test dedup with duplicates — the same skill needed when uniquifying overlapping abuse signals (each user-IP fingerprint appears at most once per detection batch).
- #46mediumrarely asked
46. Multiply Strings
Multiply two big integers represented as strings. Reddit asks this to test grade-school multiplication translated to code — the same shape used in their cross-shard counter merging where each shard returns a digit-encoded partial sum.
- #47mediumsometimes asked
47. Permutations
Generate all permutations of distinct integers. Reddit uses this to test backtracking — the same pattern they'd use to enumerate orderings of A/B test variants for users.
- #48mediumsometimes asked
48. Rotate Image
Rotate an n x n matrix 90 degrees clockwise in-place. Reddit asks this to test the transpose-then-reverse trick — the same building block they use when re-orienting heatmap matrices for moderator dashboards.
- #49mediumfrequently asked
49. Group Anagrams
Group strings that are anagrams of each other. Reddit uses this to test hash-key design — the same shape used when clustering near-duplicate post titles for spam detection (sort the letters to get a normalized fingerprint).
- #50mediumsometimes asked
50. Spiral Matrix
Traverse a matrix in spiral order. Reddit uses this to test boundary tracking — the same skill needed when iterating around 2D region tiles in their image-grid rendering for AR/AR filters.
- #51mediumsometimes asked
51. Jump Game
Determine if you can reach the last index of an array starting from index 0. Reddit asks this to test greedy intuition — the same forward-reachability check used in their dependency-resolution for ad-pixel firing order.
- #52mediumfrequently asked
52. Merge Intervals
Merge overlapping intervals. Reddit uses this canonical interval problem to test sort + scan — the same shape used when merging consecutive vote-window aggregations into a single hot-score period.
- #53mediumsometimes asked
53. Unique Paths
Count the number of paths from top-left to bottom-right of an m x n grid (right/down only). Reddit uses this DP problem as a clean grid-DP warm-up before harder routing problems.
- #54mediumsometimes asked
54. Minimum Path Sum
Find the path from top-left to bottom-right with minimum sum (right/down only). Reddit uses this to extend grid DP with weights — the same routing pattern they'd use to minimize CDN-cost for inter-region replication.
- #55mediumsometimes asked
55. Simplify Path
Simplify a Unix-style absolute file path. Reddit uses this string + stack problem to test parsing — the same pattern they apply when canonicalizing /r/sub/comments/abc/comment/xyz URLs for cache keying.
- #56mediumsometimes asked
56. Set Matrix Zeroes
If an element in an m x n matrix is 0, zero out its entire row and column. Reddit uses this to test in-place 2D manipulation under a tight memory budget — the same shape they'd use to scrub rows/columns of an analytics matrix when a user is GDPR-deleted.
- #57mediumsometimes asked
57. Search a 2D Matrix
Search a sorted 2D matrix where each row is sorted and each row's first > previous row's last. Reddit uses this to test the 1D-binary-search-on-flattened-matrix trick.
- #58mediumsometimes asked
58. Sort Colors
Sort an array containing only 0s, 1s, and 2s in-place (Dutch national flag). Reddit uses this to test the three-pointer partition — the same shape used when bucketing items into three priority lanes in their ranking pipeline.
- #59mediumrarely asked
59. Combinations
Generate all combinations of k numbers from 1 to n. Reddit uses this to test backtracking with start-index — the same enumeration shape they'd use when picking k subreddits for an admin notification A/B test.
- #60mediumfrequently asked
60. Subsets
Generate all 2^n subsets of a set of distinct integers. Reddit uses this to test backtracking and bitmask enumeration — the same enumeration used when computing all flag-combination buckets for feature-rollout cohorts.
- #61mediumsometimes asked
61. Word Search
Check if a word exists in a 2D character grid (adjacent cells, no reuse). Reddit uses this to test DFS with backtracking on grids — the same shape used in their image-grid content-moderation when scanning for embedded text patterns.
- #62mediumrarely asked
62. Remove Duplicates from Sorted Array II
Allow at most two occurrences of each value in a sorted array, in-place. Reddit uses this to test slow/fast pointer with a count threshold — the same shape as rate-limiting to N per user in their abuse pipeline.
- #63mediumsometimes asked
63. Decode Ways
Count the number of ways to decode a digit string to letters (A=1..Z=26). Reddit uses this DP problem to test recurrence design — the same shape used in their tokenizer when a sequence of input bytes has multiple valid prefix interpretations.
- #64mediumfrequently asked
64. Binary Tree Level Order Traversal
Return level-order traversal of a binary tree as a list of lists. Reddit uses this BFS warm-up to test queue technique — the same shape used in their comment-tree renderer which paginates by depth level.
- #65mediumsometimes asked
65. Binary Tree Zigzag Level Order Traversal
Return zigzag level-order traversal of a binary tree. Reddit asks this as a BFS variation to test deque vs. queue intuition — relevant for their alternating-direction rendering pattern in certain UI experiments.
- #66mediumsometimes asked
66. Construct Binary Tree from Preorder and Inorder Traversal
Rebuild a binary tree from preorder and inorder traversals. Reddit uses this to test tree-recursion with index management — the same skill used in their comment-tree audit where they must reconstruct the original tree from serialized snapshots.
- #67mediumfrequently asked
67. Validate Binary Search Tree
Determine whether a binary tree is a valid BST. Reddit uses this to test the bounded-recursion pattern — the same shape used when validating that a comment-tree's parent timestamps satisfy a strict-monotonic constraint.
- #68mediumfrequently asked
68. Word Break
Determine if a string can be segmented into words from a dictionary. Reddit uses this DP problem to test the prefix-suffix decomposition pattern — the same shape used when tokenizing usernames into recognized subreddit references during mention detection.
- #69mediumfrequently asked
69. LRU Cache
Design an LRU cache with O(1) get and put. Reddit uses this to test data-structure composition (hash + doubly-linked-list) — the same primitive used in their hot-post cache eviction layer in front of Postgres.
- #70mediumfrequently asked
70. Number of Islands
Count the number of connected components of 1s in a grid. Reddit uses this DFS/BFS classic to test grid traversal — the same shape used when clustering coordinated abuse cells in their fraud-detection IP-grid.
- #71mediumfrequently asked
71. Course Schedule
Determine if you can finish all courses given prerequisite pairs (cycle detection in a DAG). Reddit uses this to test topological-sort intuition — the same shape used when validating cross-shard data-migration dependency graphs.
- #72mediumsometimes asked
72. Course Schedule II
Return any valid course order given prerequisites. Reddit uses this topo-sort problem to validate dependency-graph linearization — the same shape used when scheduling a chain of database migrations.
- #73mediumfrequently asked
73. Implement Trie (Prefix Tree)
Implement a trie supporting insert, search, and startsWith. Reddit uses this to test prefix-tree design — the same data structure they use in their autocomplete service for subreddit and username completion.
- #74mediumfrequently asked
74. Kth Largest Element in an Array
Find the kth-largest element. Reddit uses this to test heap and quickselect — the same primitive that powers their top-k post selector for ranking feed pages.
- #78mediumsometimes asked
78. Kth Smallest Element in a BST
Find the kth smallest in a BST. Reddit uses this to test inorder + early termination — relevant for ranked-paginated retrieval from an in-memory BST of upvote scores.
- #79mediumfrequently asked
79. Lowest Common Ancestor of a Binary Tree
Find the lowest common ancestor of two nodes in a binary tree. Reddit uses this canonical LCA problem to test post-order recursion — the same shape they use to find the nearest common parent comment when merging conflicting moderator threads.
- #80mediumfrequently asked
80. Product of Array Except Self
Return an array where each element is the product of all others (no division). Reddit uses this to test prefix/suffix product technique — the same shape used in their cross-shard counter reconciliation where you compute totals excluding one shard.
- #81mediumfrequently asked
81. Top K Frequent Elements
Return the k most frequent elements in an array. Reddit uses this to test count + heap design — the exact shape of their trending-words detector in subreddit titles over a time window.
- #82mediumsometimes asked
82. Coin Change
Find the minimum number of coins to make a target amount. Reddit uses this DP problem to test classic unbounded-knapsack — the same shape used when computing minimum SQL queries to satisfy a multi-resource quota.
- #85mediumsometimes asked
85. Longest Increasing Subsequence
Find the length of the longest strictly increasing subsequence. Reddit uses this to test DP + binary search — relevant when finding the longest monotonically increasing run in a vote stream (a bot-detection signal).
- #86mediumsometimes asked
86. Reverse Words in a String
Reverse the order of words in a string. Reddit uses this string-manipulation question to test pointer fluency — the same shape used when normalizing search query terms in their suggest service.