All DSA Sheets
CS SDE Sheet
Customize study plans according to your needs. You are recommended to work on the questions in order.
Questions Summary
We have selected these 169 problems. It should take around 76 hours for an average person to solve these problems.
difficulty
Questions grouped by difficulty
Easy: 41
Medium: 102
Hard: 26
topics
Questions grouped by topics
Array: 24
Stack: 14
Linked List: 14
String: 14
Binary Tree: 19
Binary Search: 8
Graph: 21
Binary Search Tree: 4
Hash Table: 3
Dynamic Programming: 12
Binary: 7
Math: 5
Heap: 8
Trie: 4
Recursion: 6
Matrix: 5
Queue: 1
Completed 0 / 169
You can now bookmark the page to save your preferences! We also recently changed the questions presentation settings.
1
Two Sum
easy
·15 mins
·Array
2
Valid Parentheses
easy
·20 mins
·Stack
3
Merge Two Sorted Lists
easy
·20 mins
·Linked List
4
Best Time to Buy and Sell Stock
easy
·20 mins
·Array
5
Valid Palindrome
easy
·15 mins
·String
6
Invert Binary Tree
easy
·15 mins
·Binary Tree
7
Valid Anagram
easy
·15 mins
·String
8
Binary Search
easy
·15 mins
·Binary Search
9
Flood Fill
easy
·20 mins
·Graph
10
Lowest Common Ancestor of a Binary Search Tree
easy
·20 mins
·Binary Search Tree
11
Balanced Binary Tree
easy
·15 mins
·Binary Tree
12
Linked List Cycle
easy
·20 mins
·Linked List
13
Implement Queue using Stacks
easy
·20 mins
·Stack
14
First Bad Version
easy
·20 mins
·Binary Search
15
Ransom Note
easy
·15 mins
·Hash Table
16
Climbing Stairs
easy
·20 mins
·Dynamic Programming
17
Longest Palindrome
easy
·20 mins
·String
18
Reverse Linked List
easy
·20 mins
·Linked List
19
Majority Element
easy
·20 mins
·Array
20
Add Binary
easy
·15 mins
·Binary
21
Diameter of Binary Tree
easy
·30 mins
·Binary Tree
22
Middle of the Linked List
easy
·20 mins
·Linked List
23
Maximum Depth of Binary Tree
easy
·15 mins
·Binary Tree
24
Contains Duplicate
easy
·15 mins
·Array
25
Meeting Rooms
easy
·20 mins
·Array
26
Roman to Integer
easy
·20 mins
·Math
27
Backspace String Compare
easy
·15 mins
·Stack
28
Counting Bits
easy
·15 mins
·Binary
29
Same Tree
easy
·20 mins
·Binary Tree
30
Number of 1 Bits
easy
·15 mins
·Binary
31
Longest Common Prefix
easy
·20 mins
·String
32
Single Number
easy
·15 mins
·Binary
33
Palindrome Linked List
easy
·20 mins
·Linked List
34
Move Zeroes
easy
·20 mins
·Array
35
Symmetric Tree
easy
·20 mins
·Binary Tree
36
Missing Number
easy
·15 mins
·Binary
37
Palindrome Number
easy
·15 mins
·Math
38
Convert Sorted Array to Binary Search Tree
easy
·20 mins
·Binary Search Tree
39
Reverse Bits
easy
·15 mins
·Binary
40
Subtree of Another Tree
easy
·20 mins
·Binary Tree
41
Squares of a Sorted Array
easy
·20 mins
·Array
42
Maximum Subarray
medium
·20 mins
·Dynamic Programming
43
Insert Interval
medium
·25 mins
·Array
44
01 Matrix
medium
·30 mins
·Graph
45
K Closest Points to Origin
medium
·30 mins
·Heap
46
Longest Substring Without Repeating Characters
medium
·30 mins
·String
47
3Sum
medium
·30 mins
·Array
48
Binary Tree Level Order Traversal
medium
·20 mins
·Binary Tree
49
Clone Graph
medium
·25 mins
·Graph
50
Evaluate Reverse Polish Notation
medium
·30 mins
·Stack
51
Course Schedule
medium
·30 mins
·Graph
52
Implement Trie (Prefix Tree)
medium
·35 mins
·Trie
53
Coin Change
medium
·25 mins
·Dynamic Programming
54
Product of Array Except Self
medium
·30 mins
·Array
55
Min Stack
medium
·20 mins
·Stack
56
Validate Binary Search Tree
medium
·20 mins
·Binary Search Tree
57
Number of Islands
medium
·25 mins
·Graph
58
Rotting Oranges
medium
·30 mins
·Graph
59
Search in Rotated Sorted Array
medium
·30 mins
·Binary Search
60
Combination Sum
medium
·30 mins
·Array
61
Permutations
medium
·30 mins
·Recursion
62
Merge Intervals
medium
·30 mins
·Array
63
Lowest Common Ancestor of a Binary Tree
medium
·25 mins
·Binary Tree
64
Time Based Key-Value Store
medium
·35 mins
·Binary Search
65
Accounts Merge
medium
·30 mins
·Graph
66
Sort Colors
medium
·25 mins
·Array
67
Word Break
medium
·30 mins
·Trie
68
Partition Equal Subset Sum
medium
·30 mins
·Dynamic Programming
69
String to Integer (atoi)
medium
·25 mins
·String
70
Spiral Matrix
medium
·25 mins
·Matrix
71
Subsets
medium
·30 mins
·Recursion
72
Binary Tree Right Side View
medium
·20 mins
·Binary Tree
73
Longest Palindromic Substring
medium
·25 mins
·String
74
Unique Paths
medium
·20 mins
·Dynamic Programming
75
Construct Binary Tree from Preorder and Inorder Traversal
medium
·25 mins
·Binary Tree
76
Container With Most Water
medium
·35 mins
·Array
77
Letter Combinations of a Phone Number
medium
·30 mins
·Recursion
78
Word Search
medium
·30 mins
·Graph
79
Find All Anagrams in a String
medium
·30 mins
·String
80
Minimum Height Trees
medium
·30 mins
·Graph
81
Task Scheduler
medium
·35 mins
·Heap
82
LRU Cache
medium
·30 mins
·Linked List
83
Kth Smallest Element in a BST
medium
·25 mins
·Binary Tree
84
Daily Temperatures
medium
·30 mins
·Stack
85
House Robber
medium
·25 mins
·Dynamic Programming
86
Gas Station
medium
·30 mins
·Array
87
Next Permutation
medium
·30 mins
·Recursion
88
Valid Sudoku
medium
·35 mins
·Matrix
89
Group Anagrams
medium
·25 mins
·String
90
Maximum Product Subarray
medium
·30 mins
·Dynamic Programming
91
Design Add and Search Words Data Structure
medium
·35 mins
·Trie
92
Pacific Atlantic Water Flow
medium
·30 mins
·Graph
93
Remove Nth Node From End of List
medium
·20 mins
·Linked List
94
Shortest Path to Get Food
medium
·30 mins
·Graph
95
Find the Duplicate Number
medium
·20 mins
·Binary
96
Top K Frequent Words
medium
·30 mins
·Heap
97
Longest Increasing Subsequence
medium
·30 mins
·Dynamic Programming
98
Graph Valid Tree
medium
·30 mins
·Graph
99
Course Schedule II
medium
·35 mins
·Graph
100
Swap Nodes in Pairs
medium
·25 mins
·Linked List
101
Path Sum II
medium
·25 mins
·Binary Tree
102
Longest Consecutive Sequence
medium
·30 mins
·Array
103
Rotate Array
medium
·25 mins
·Array
104
Odd Even Linked List
medium
·25 mins
·Linked List
105
Decode String
medium
·30 mins
·Stack
106
Contiguous Array
medium
·30 mins
·Array
107
Maximum Width of Binary Tree
medium
·20 mins
·Binary Tree
108
Find K Closest Elements
medium
·30 mins
·Heap
109
Longest Repeating Character Replacement
medium
·30 mins
·String
110
Inorder Successor in BST
medium
·30 mins
·Binary Search Tree
111
Jump Game
medium
·20 mins
·Dynamic Programming
112
Add Two Numbers
medium
·25 mins
·Linked List
113
Generate Parentheses
medium
·25 mins
·Recursion
114
Sort List
medium
·25 mins
·Linked List
115
Number of Connected Components in an Undirected Graph
medium
·30 mins
·Graph
116
Minimum Knight Moves
medium
·35 mins
·Graph
117
Subarray Sum Equals K
medium
·35 mins
·Array
118
Asteroid Collision
medium
·30 mins
·Stack
119
Random Pick with Weight
medium
·25 mins
·Math
120
Kth Largest Element in an Array
medium
·30 mins
·Heap
121
Maximal Square
medium
·30 mins
·Dynamic Programming
122
Rotate Image
medium
·25 mins
·Matrix
123
Binary Tree Zigzag Level Order Traversal
medium
·25 mins
·Binary Tree
124
Design Hit Counter
medium
·30 mins
·Queue
125
Path Sum III
medium
·35 mins
·Binary Tree
126
Pow(x, n)
medium
·20 mins
·Math
127
Search a 2D Matrix
medium
·30 mins
·Binary Search
128
Largest Number
medium
·20 mins
·String
129
Decode Ways
medium
·25 mins
·Dynamic Programming
130
Meeting Rooms II
medium
·30 mins
·Array
131
Reverse Integer
medium
·25 mins
·Math
132
Set Matrix Zeroes
medium
·25 mins
·Matrix
133
Reorder List
medium
·25 mins
·Linked List
134
Encode and Decode Strings
medium
·25 mins
·String
135
Cheapest Flights Within K Stops
medium
·45 mins
·Graph
136
All Nodes Distance K in Binary Tree
medium
·25 mins
·Binary Tree
137
3Sum Closest
medium
·30 mins
·Array
138
Rotate List
medium
·25 mins
·Linked List
139
Find Minimum in Rotated Sorted Array
medium
·30 mins
·Binary Search
140
Basic Calculator II
medium
·30 mins
·Stack
141
Combination Sum IV
medium
·35 mins
·Dynamic Programming
142
Insert Delete GetRandom O(1)
medium
·20 mins
·Hash Table
143
Non-overlapping Intervals
medium
·20 mins
·Array
144
Minimum Window Substring
hard
·30 mins
·String
145
Serialize and Deserialize Binary Tree
hard
·40 mins
·Binary Tree
146
Trapping Rain Water
hard
·35 mins
·Stack
147
Find Median from Data Stream
hard
·30 mins
·Heap
148
Word Ladder
hard
·45 mins
·Graph
149
Basic Calculator
hard
·40 mins
·Stack
150
Maximum Profit in Job Scheduling
hard
·45 mins
·Binary Search
151
Merge k Sorted Lists
hard
·30 mins
·Heap
152
Largest Rectangle in Histogram
hard
·35 mins
·Stack
153
Binary Tree Maximum Path Sum
hard
·35 mins
·Binary Tree
154
Maximum Frequency Stack
hard
·40 mins
·Stack
155
Median of Two Sorted Arrays
hard
·40 mins
·Binary Search
156
Longest Increasing Path in a Matrix
hard
·40 mins
·Graph
157
Longest Valid Parentheses
hard
·35 mins
·Stack
158
Design In-Memory File System
hard
·40 mins
·Trie
159
Employee Free Time
hard
·35 mins
·Array
160
Word Search II
hard
·40 mins
·Graph
161
Alien Dictionary
hard
·45 mins
·Graph
162
Bus Routes
hard
·45 mins
·Graph
163
Sliding Window Maximum
hard
·35 mins
·Array
164
Palindrome Pairs
hard
·40 mins
·String
165
Reverse Nodes in k-Group
hard
·35 mins
·Linked List
166
Sudoku Solver
hard
·40 mins
·Matrix
167
First Missing Positive
hard
·35 mins
·Hash Table
168
N-Queens
hard
·40 mins
·Recursion
169
Smallest Range Covering Elements from K Lists
hard
·40 mins
·Heap
Questions Summary
We have selected these 169 problems. It should take around 76 hours for an average person to solve these problems.
difficulty
Questions grouped by difficulty
Easy: 41
Medium: 102
Hard: 26
topics
Questions grouped by topics
Array: 24
Stack: 14
Linked List: 14
String: 14
Binary Tree: 19
Binary Search: 8
Graph: 21
Binary Search Tree: 4
Hash Table: 3
Dynamic Programming: 12
Binary: 7
Math: 5
Heap: 8
Trie: 4
Recursion: 6
Matrix: 5
Queue: 1
