DE Shaw Interview Questions — 100 DSA Problems
96 problems with full solutions in Python, Java, C++, JavaScript, Go, Rust.
Most frequently asked DE Shaw LeetCode questions for software engineering interviews.
- Binary Tree Cameras (HARD) — Dynamic Programming, Tree, Depth-First Search, Binary Tree
- Minimum Size Subarray in Infinite Array (MEDIUM) — Array, Hash Table, Sliding Window, Prefix Sum
- Maximum Subsequence Score (MEDIUM) — Array, Greedy, Sorting, Heap (Priority Queue)
- Removing Minimum Number of Magic Beans (MEDIUM) — Array, Greedy, Sorting, Enumeration, Prefix Sum
- Maximum Points Tourist Can Earn (MEDIUM) — Array, Dynamic Programming, Matrix
- Letter Combinations of a Phone Number (MEDIUM) — Hash Table, String, Backtracking
- Relative Sort Array (EASY) — Array, Hash Table, Sorting, Counting Sort
- Minimum Cost Walk in Weighted Graph (HARD) — Array, Bit Manipulation, Union Find, Graph
- Sum Game (MEDIUM) — Math, String, Greedy, Game Theory
- Max Number of K-Sum Pairs (MEDIUM) — Array, Hash Table, Two Pointers, Sorting
- Maximum Points After Collecting Coins From All Nodes (HARD) — Array, Dynamic Programming, Bit Manipulation, Tree, Depth-First Search, Memoization
- Maximum Strength of K Disjoint Subarrays (HARD) — Array, Dynamic Programming, Prefix Sum
- Find the Sum of the Power of All Subsequences (HARD) — Array, Dynamic Programming
- Minimum Deletions to Make String K-Special (MEDIUM) — Hash Table, String, Greedy, Sorting, Counting
- Greatest Sum Divisible by Three (MEDIUM) — Array, Dynamic Programming, Greedy, Sorting
- Determine the Winner of a Bowling Game (EASY) — Array, Simulation
- Find the Maximum Divisibility Score (EASY) — Array
- Query Kth Smallest Trimmed Number (MEDIUM) — Array, String, Divide and Conquer, Sorting, Heap (Priority Queue), Radix Sort, Quickselect
- Equal Row and Column Pairs (MEDIUM) — Array, Hash Table, Matrix, Simulation
- Number of Subarrays With AND Value of K (HARD) — Array, Binary Search, Bit Manipulation, Segment Tree
- Number of Substrings Containing All Three Characters (MEDIUM) — Hash Table, String, Sliding Window
- Maximum Deletions on a String (HARD) — String, Dynamic Programming, Rolling Hash, String Matching, Hash Function
- Median of a Row Wise Sorted Matrix (MEDIUM) — Array, Binary Search, Matrix
- Take Gifts From the Richest Pile (EASY) — Array, Heap (Priority Queue), Simulation
- Find Peak Calling Hours for Each City (MEDIUM) — Database
- Shortest String That Contains Three Strings (MEDIUM) — String, Greedy, Enumeration
- Minimum Runes to Add to Cast Spell (HARD) — Array, Depth-First Search, Breadth-First Search, Union Find, Graph, Topological Sort
- Minimize Connected Groups by Inserting Interval (MEDIUM) — Array, Binary Search, Sliding Window, Sorting
- Count the Number of Incremovable Subarrays II (HARD) — Array, Two Pointers, Binary Search
- K-th Smallest in Lexicographical Order (HARD) — Trie
- Majority Element (EASY) — Array, Hash Table, Divide and Conquer, Sorting, Counting
- Best Time to Buy and Sell Stock (EASY) — Array, Dynamic Programming
- Minimum Number of Taps to Open to Water a Garden (HARD) — Array, Dynamic Programming, Greedy
- Minimum Number of Refueling Stops (HARD) — Array, Dynamic Programming, Greedy, Heap (Priority Queue)
- Painting the Walls (HARD) — Array, Dynamic Programming
- Maximum Product Subarray (MEDIUM) — Array, Dynamic Programming
- Put Marbles in Bags (HARD) — Array, Greedy, Sorting, Heap (Priority Queue)
- House Robber (MEDIUM) — Array, Dynamic Programming
- Sliding Window Maximum (HARD) — Array, Queue, Sliding Window, Heap (Priority Queue), Monotonic Queue
- Best Time to Buy and Sell Stock II (MEDIUM) — Array, Dynamic Programming, Greedy
- Longest Consecutive Sequence (MEDIUM) — Array, Hash Table, Union Find
- Insert Delete GetRandom O(1) (MEDIUM) — Array, Hash Table, Math, Design, Randomized
- Maximum Subarray (MEDIUM) — Array, Divide and Conquer, Dynamic Programming
- Remove K Digits (MEDIUM) — String, Stack, Greedy, Monotonic Stack
- Maximal Square (MEDIUM) — Array, Dynamic Programming, Matrix
- Minimum Number of Pushes to Type Word II (MEDIUM) — Hash Table, String, Greedy, Sorting, Counting
- Swim in Rising Water (HARD) — Array, Binary Search, Depth-First Search, Breadth-First Search, Union Find, Heap (Priority Queue), Matrix
- Number of Wonderful Substrings (MEDIUM) — Hash Table, String, Bit Manipulation, Prefix Sum
- Task Scheduler (MEDIUM) — Array, Hash Table, Greedy, Sorting, Heap (Priority Queue), Counting
- Average Waiting Time (MEDIUM) — Array, Simulation
DS
DE Shaw
100 questions tracked96 with solutions
Frequency scoreSorted highest → lowest frequency✓ Our Solution = we have a detailed walkthrough
Showing 100 of 100 questions
1Dynamic ProgrammingTreeDepth-First SearchBinary Tree
2ArrayHash TableSliding WindowPrefix Sum
3ArrayGreedySortingHeap (Priority Queue)
4ArrayGreedySortingEnumeration+1
5ArrayDynamic ProgrammingMatrix
6Hash TableStringBacktracking
7ArrayHash TableSortingCounting Sort
8ArrayBit ManipulationUnion FindGraph
9MathStringGreedyGame Theory
10ArrayHash TableTwo PointersSorting
11HardMaximum Points After Collecting Coins From All Nodes✓ Our Solution ArrayDynamic ProgrammingBit ManipulationTree+2
12ArrayDynamic ProgrammingPrefix Sum
14Hash TableStringGreedySorting+1
15ArrayDynamic ProgrammingGreedySorting
18ArrayStringDivide and ConquerSorting+3
19ArrayHash TableMatrixSimulation
20ArrayBinary SearchBit ManipulationSegment Tree
21MediumNumber of Substrings Containing All Three Characters✓ Our Solution Hash TableStringSliding Window
22StringDynamic ProgrammingRolling HashString Matching+1
23MediumMedian of a Row Wise Sorted Matrix
ArrayBinary SearchMatrix
24ArrayHeap (Priority Queue)Simulation
25MediumFind Peak Calling Hours for Each City
Database
27HardMinimum Runes to Add to Cast Spell
ArrayDepth-First SearchBreadth-First SearchUnion Find+2
28MediumMinimize Connected Groups by Inserting Interval
ArrayBinary SearchSliding WindowSorting
29ArrayTwo PointersBinary Search
31ArrayHash TableDivide and ConquerSorting+1
33ArrayDynamic ProgrammingGreedy
34ArrayDynamic ProgrammingGreedyHeap (Priority Queue)
37ArrayGreedySortingHeap (Priority Queue)
39ArrayQueueSliding WindowHeap (Priority Queue)+1
40ArrayDynamic ProgrammingGreedy
41ArrayHash TableUnion Find
42ArrayHash TableMathDesign+1
43ArrayDivide and ConquerDynamic Programming
44StringStackGreedyMonotonic Stack
45ArrayDynamic ProgrammingMatrix
46Hash TableStringGreedySorting+1
47ArrayBinary SearchDepth-First SearchBreadth-First Search+3
48Hash TableStringBit ManipulationPrefix Sum
49ArrayHash TableGreedySorting+2
51ArrayGreedyHeap (Priority Queue)
52ArrayUnion FindGraphMinimum Spanning Tree
53ArrayGreedySortingHeap (Priority Queue)
54MathDynamic ProgrammingCombinatorics
55ArrayTwo PointersBinary SearchSorting
56StringDynamic ProgrammingBacktracking
57ArrayBinary SearchDynamic ProgrammingGreedy+1
58ArrayTwo PointersDynamic ProgrammingStack+1
59ArrayDynamic ProgrammingGreedy
60MediumFind First and Last Position of Element in Sorted Array✓ Our Solution ArrayBinary Search
61MediumShortest Subarray to be Removed to Make Array Sorted✓ Our Solution ArrayTwo PointersBinary SearchStack+1
65ArrayStringDynamic ProgrammingBit Manipulation+1
66StringDynamic ProgrammingStack
67ArrayGreedyBit ManipulationPrefix Sum
68StringDynamic Programming
71ArraySliding WindowPrefix Sum
72ArrayMathDivide and ConquerDynamic Programming+6
74ArrayBinary SearchSliding WindowPrefix Sum
75ArrayDynamic ProgrammingStackBreadth-First Search+4
76ArrayBinary SearchDivide and Conquer
77Dynamic ProgrammingDepth-First SearchBreadth-First SearchGraph+2
85StringDynamic Programming
86ArrayStackMonotonic Stack
87ArrayDynamic ProgrammingStackMatrix+1
89ArrayDynamic ProgrammingMatrix
93ArrayBinary SearchDynamic ProgrammingSorting
94ArrayDynamic ProgrammingDepth-First SearchBreadth-First Search+4
95ArrayBinary SearchMatrixPrefix Sum+1
96ArrayDynamic ProgrammingGreedyTree+1
98Hash TableTreeDepth-First SearchBreadth-First Search+1
99ArrayHash TableStringBreadth-First Search
100Hash TableLinked ListTwo Pointers