Top 200 DSA Questions with Practice Links
Arrays
1. Two Sum [https://leetcode.com/problems/two-sum/]
2. Best Time to Buy and Sell Stock [https://leetcode.com/problems/best-time-to-buy-and-sell-stock/]
3. Maximum Subarray (Kadanes Algorithm) [https://leetcode.com/problems/maximum-subarray/]
4. Product of Array Except Self [https://leetcode.com/problems/product-of-array-except-self/]
5. Move Zeroes
6. Merge Intervals
7. 3Sum
8. Container With Most Water
9. Set Matrix Zeroes
10. Spiral Matrix
11. Rotate Image
12. Pascals Triangle
13. Subarray Sum Equals K
14. Find the Duplicate Number
15. Missing Number
16. Majority Element
17. Merge Sorted Array
18. Max Consecutive Ones
19. Sliding Window Maximum
20. Find All Duplicates in an Array
Strings
1. Valid Anagram
2. Group Anagrams
3. Longest Substring Without Repeating Characters [https://leetcode.com/problems/longest-substring-without-repeat
4. Valid Palindrome
5. String Compression
6. Implement strStr()
7. Longest Common Prefix
8. Count and Say
9. Longest Palindromic Substring
10. Minimum Window Substring
11. Check for Rotation
12. Remove All Adjacent Duplicates
13. Check if Two Strings are Isomorphic
14. Reverse Words in a String
15. Multiply Strings
16. Valid Parentheses [https://leetcode.com/problems/valid-parentheses/]
17. Roman to Integer
18. Zigzag Conversion
19. Add Binary
20. Longest Repeating Character Replacement
Linked List
1. Reverse a Linked List [https://leetcode.com/problems/reverse-linked-list/]
2. Detect Cycle in a Linked List [https://leetcode.com/problems/linked-list-cycle/]
3. Merge Two Sorted Lists [https://leetcode.com/problems/merge-two-sorted-lists/]
4. Remove N-th Node From End
5. Middle of the Linked List
6. Add Two Numbers
7. Copy List with Random Pointer
8. Sort a Linked List
9. Linked List Cycle II
10. Reorder List
11. Flatten a Multilevel Doubly Linked List
12. Intersection of Two Linked Lists
13. Palindrome Linked List
14. Rotate List
15. Partition List
16. Remove Duplicates from Sorted List
17. Remove Linked List Elements
18. Swap Nodes in Pairs
19. Reverse Nodes in k-Group
20. LRU Cache
Stack & Queue
1. Valid Parentheses [https://leetcode.com/problems/valid-parentheses/]
2. Min Stack
3. Evaluate Reverse Polish Notation
4. Daily Temperatures
5. Next Greater Element I
6. Next Greater Element II
7. Implement Queue using Stacks
8. Implement Stack using Queues
9. Decode String
10. Basic Calculator
11. Remove K Digits
12. Simplify Path
13. Largest Rectangle in Histogram
14. Sliding Window Maximum
15. Design Circular Queue
16. Asteroid Collision
17. Online Stock Span
18. Backspace String Compare
19. Baseball Game
20. Queue Reconstruction by Height
Trees
1. Maximum Depth of Binary Tree
2. Invert Binary Tree
3. Diameter of Binary Tree
4. Same Tree
5. Symmetric Tree
6. Binary Tree Level Order Traversal
7. Validate Binary Search Tree
8. Kth Smallest Element in a BST
9. Lowest Common Ancestor of a Binary Tree
10. Serialize and Deserialize Binary Tree
11. Path Sum
12. Construct Binary Tree from Inorder and Postorder Traversal
13. Flatten Binary Tree to Linked List
14. Binary Tree Zigzag Level Order Traversal
15. Balanced Binary Tree
16. Binary Tree Right Side View
17. Sum Root to Leaf Numbers
18. Binary Tree Maximum Path Sum
19. Recover Binary Search Tree
20. Binary Tree Vertical Order Traversal
Graphs
1. Number of Islands [https://leetcode.com/problems/number-of-islands/]
2. Clone Graph
3. Course Schedule
4. Pacific Atlantic Water Flow
5. Word Ladder
6. Alien Dictionary
7. Graph Valid Tree
8. Network Delay Time
9. Rotting Oranges
10. Minimum Height Trees
11. Find Eventual Safe States
12. Critical Connections in a Network
13. Redundant Connection
14. Bipartite Graph
15. Topological Sort
16. Detect Cycle in Directed Graph
17. Detect Cycle in Undirected Graph
18. Dijkstras Algorithm
19. Bellman-Ford Algorithm
20. Floyd Warshall Algorithm
Dynamic Programming
1. Climbing Stairs [https://leetcode.com/problems/climbing-stairs/]
2. House Robber
3. Longest Palindromic Substring
4. Longest Common Subsequence [https://www.geeksforgeeks.org/longest-common-subsequence-dp-4/]
5. Word Break
6. Coin Change [https://leetcode.com/problems/coin-change/]
7. Unique Paths
8. Jump Game
9. Partition Equal Subset Sum
10. Minimum Path Sum
11. Edit Distance
12. Interleaving String
13. Decode Ways
14. Burst Balloons
15. 0/1 Knapsack [https://www.geeksforgeeks.org/0-1-knapsack-problem-dp-10/]
16. Rod Cutting
17. Egg Dropping Puzzle
18. Matrix Chain Multiplication
19. Palindromic Substrings
20. Longest Increasing Subsequence
Heaps
1. Merge K Sorted Lists
2. Top K Frequent Elements [https://leetcode.com/problems/top-k-frequent-elements/]
3. Find Median from Data Stream [https://leetcode.com/problems/find-median-from-data-stream/]
4. Kth Largest Element in an Array
5. K Closest Points to Origin
6. Kth Smallest Element in a Sorted Matrix
7. Reorganize String
8. Sort Characters By Frequency
9. Find K Pairs with Smallest Sums
10. Task Scheduler
11. Design Twitter
12. IPO Problem
13. Sliding Window Maximum
14. Minimum Cost to Connect Ropes
15. Ugly Number II
16. Stream of Characters
17. Find Median in Running Stream
18. Frequency Stack
19. Smallest Range Covering Elements from K Lists
20. Cheapest Flights Within K Stops
Bit Manipulation & Math
1. Single Number
2. Sum of Two Integers
3. Number of 1 Bits
4. Counting Bits
5. Missing Number
6. Reverse Bits
7. Power of Two
8. Power of Four
9. Subsets using Bitmask
10. XOR Queries of Subarrays
11. Divide Two Integers
12. Excel Sheet Column Number
13. Add Digits
14. Happy Number
15. Factorial Trailing Zeroes
16. Sieve of Eratosthenes
17. Greatest Common Divisor
18. LCM of Array
19. Square Root using Binary Search
20. Check if Number is Prime