AlgoMap.io - Free Data Structures & Algorithms Roadmap
0 / 100
Arrays & Strings
Big O Notation: Time & Space Complexity
Static Arrays, Dynamic Arrays & Strings
Full Python Course for Beginners
| Problem | Difficulty | Leetcode | Difficulty Score | Status |
|---|---|---|---|---|
| Find Closest Number to Zero | Easy | 3/10 | ✖ | |
| Merge Strings Alternately | Easy | 4/10 | ✖ | |
| Roman to Integer | Easy | 4.5/10 | ✖ | |
| Is Subsequence | Easy | 4.5/10 | ✖ | |
| Best Time to Buy and Sell Stock | Easy | 5/10 | ✖ | |
| Longest Common Prefix | Easy | 5/10 | ✖ | |
| Summary Ranges | Easy | 5/10 | ✖ | |
| Remove Duplicates From Sorted Array | Easy | 5/10 | ✖ | |
| Remove Element | Easy | 5/10 | ✖ | |
| Merge Sorted Array | Easy | 5/10 | ✖ | |
| Best Time to Buy and Sell Stock II | Medium | 5.5/10 | ✖ | |
| Remove Duplicates From Sorted Array II | Medium | 6/10 | ✖ | |
| Sort Colors | Medium | 6.5/10 | ✖ | |
| Product of Array Except Self | Medium | 7/10 | ✖ | |
| H Index | Medium | 7/10 | ✖ | |
| Merge Intervals | Medium | 8/10 | ✖ | |
| Spiral Matrix | Medium | 8/10 | ✖ | |
| ZigZag Conversion | Medium | 8/10 | ✖ | |
| Rotate Image | Medium | 9/10 | ✖ |
Hashmaps & Sets
| Problem | Difficulty | Leetcode | Difficulty Score | Status |
|---|---|---|---|---|
| Jewels and Stones | Easy | 3/10 | ✖ | |
| Contains Duplicate | Easy | 3/10 | ✖ | |
| Ransom Note | Easy | 4/10 | ✖ | |
| Valid Anagram | Easy | 5/10 | ✖ | |
| Maximum Number of Balloons | Easy | 6/10 | ✖ | |
| Two Sum | Easy | 6/10 | ✖ | |
| Valid Sudoku | Medium | 6.5/10 | ✖ | |
| Group Anagrams | Medium | 7.5/10 | ✖ | |
| Majority Element | Easy | 8/10 | ✖ | |
| Longest Consecutive Sequence | Hard | 8.5/10 | ✖ |
2 Pointers
| Problem | Difficulty | Leetcode | Difficulty Score | Status |
|---|---|---|---|---|
| Squares of a Sorted Array | Easy | 4/10 | ✖ | |
| Reverse String | Easy | 4/10 | ✖ | |
| Two Sum II - Input Array Is Sorted | Easy | 5/10 | ✖ | |
| Valid Palindrome | Easy | 5/10 | ✖ | |
| 3Sum | Medium | 7/10 | ✖ | |
| Container With Most Water | Medium | 7.5/10 | ✖ | |
| 3Sum Closest | Medium | 7.5/10 | ✖ | |
| 4Sum | Medium | 7.5/10 | ✖ | |
| Trapping Rain Water | Hard | 9/10 | ✖ |
Stacks
| Problem | Difficulty | Leetcode | Difficulty Score | Status |
|---|---|---|---|---|
| Baseball Game | Easy | 4/10 | ✖ | |
| Valid Parentheses | Easy | 5.5/10 | ✖ | |
| Evaluate Reverse Polish Notation (RPN) | Medium | 6/10 | ✖ | |
| Daily Temperatures | Medium | 6.5/10 | ✖ | |
| Min Stack | Medium | 7/10 | ✖ | |
| Largest Rectangle in Histogram | Hard | 9.5/10 | ✖ |
Linked Lists
| Problem | Difficulty | Leetcode | Difficulty Score | Status |
|---|---|---|---|---|
| Remove Duplicates from Sorted List | Easy | 4/10 | ✖ | |
| Insert Greatest Common Divisors in Linked List | Medium | 4/10 | ✖ | |
| Reverse Linked List | Easy | 5/10 | ✖ | |
| Merge Two Sorted Lists | Easy | 5/10 | ✖ | |
| Linked List Cycle | Easy | 6/10 | ✖ | |
| Middle of the Linked List | Easy | 6/10 | ✖ | |
| Remove Nth Node from End of List | Medium | 6/10 | ✖ | |
| Copy List with Random Pointer | Medium | 7/10 | ✖ |
Binary Search
| Problem | Difficulty | Leetcode | Difficulty Score | Status |
|---|---|---|---|---|
| Binary Search | Easy | 3/10 | ✖ | |
| Search Insert Position | Easy | 3.5/10 | ✖ | |
| First Bad Version | Easy | 4/10 | ✖ | |
| Valid Perfect Square | Easy | 4/10 | ✖ | |
| Search a 2D Matrix | Medium | 5/10 | ✖ | |
| Find Minimum in Rotated Sorted Array | Medium | 6/10 | ✖ | |
| Search in Rotated Sorted Array | Medium | 7/10 | ✖ | |
| Koko Eating Bananas | Medium | 7/10 | ✖ |
Sliding Window
| Problem | Difficulty | Leetcode | Difficulty Score | Status |
|---|---|---|---|---|
| Maximum Average Subarray I | Easy | 5/10 | ✖ | |
| Max Consecutive Ones III | Medium | 5/10 | ✖ | |
| Longest Substring Without Repeating Characters | Medium | 5.5/10 | ✖ | |
| Longest Repeating Character Replacement | Medium | 6/10 | ✖ | |
| Minimum Size Subarray Sum | Medium | 6/10 | ✖ | |
| Permutation in String | Medium | 7/10 | ✖ |
Trees
| Problem | Difficulty | Leetcode | Difficulty Score | Status |
|---|---|---|---|---|
| Invert Binary Tree | Easy | 3/10 | ✖ | |
| Maximum Depth of Binary Tree | Easy | 4/10 | ✖ | |
| Balanced Binary Tree | Easy | 5/10 | ✖ | |
| Diameter of Binary Tree | Easy | 5/10 | ✖ | |
| Same Binary Tree | Easy | 5/10 | ✖ | |
| Symmetric Tree | Easy | 5/10 | ✖ | |
| Path Sum | Easy | 5.5/10 | ✖ | |
| Subtree of Another Tree | Medium | 5.5/10 | ✖ | |
| Binary Tree Level Order Traversal (BFS) | Medium | 6/10 | ✖ | |
| Average of Levels in Binary Tree | Easy | 6/10 | ✖ | |
| Kth Smallest Element in a BST | Medium | 6.5/10 | ✖ | |
| Minimum Absolute Difference in BST | Easy | 6.5/10 | ✖ | |
| Validate Binary Search Tree | Medium | 6.5/10 | ✖ | |
| Lowest Common Ancestor of a Binary Search Tree | Medium | 7/10 | ✖ | |
| Implement Trie (Prefix Tree) | Medium | 8/10 | ✖ |
Heaps
| Problem | Difficulty | Leetcode | Difficulty Score | Status |
|---|---|---|---|---|
| Last Stone Weight | Easy | 5/10 | ✖ | |
| Kth Largest Element in an Array | Medium | 6/10 | ✖ | |
| Top K Frequent Elements | Medium | 6/10 | ✖ | |
| K Closest Points to Origin | Medium | 6.5/10 | ✖ | |
| Merge K Sorted Linked Lists | Hard | 8/10 | ✖ |
Recursive Backtracking
| Problem | Difficulty | Leetcode | Difficulty Score | Status |
|---|---|---|---|---|
| Subsets | Medium | 6/10 | ✖ | |
| Permutations | Medium | 6/10 | ✖ | |
| Combinations | Medium | 6.5/10 | ✖ | |
| Combination Sum | Medium | 7/10 | ✖ | |
| Letter Combinations of a Phone Number | Medium | 7/10 | ✖ | |
| Generate Parentheses | Medium | 8/10 | ✖ | |
| Jump Game II | Medium | 8/10 | ✖ | |
| Word Search | Medium | 9/10 | ✖ |
Graphs
| Problem | Difficulty | Leetcode | Difficulty Score | Status |
|---|---|---|---|---|
| Find if Path Exists in Graph | Easy | 5/10 | ✖ | |
| Number of Islands | Medium | 7/10 | ✖ | |
| Max Area of Island | Medium | 7/10 | ✖ | |
| Course Schedule (Detecting Cycles in a Graph) | Medium | 7/10 | ✖ | |
| Course Schedule II (Topological Sort) | Medium | 7/10 | ✖ | |
| Pacific Atlantic Water Flow | Medium | 8/10 | ✖ | |
| Clone Graph | Medium | 8/10 | ✖ | |
| Rotting Oranges | Medium | 8/10 | ✖ | |
| Min Cost to Connect All Points (Prim's Algorithm to Create MST) | Medium | 8.5/10 | ✖ | |
| Network Delay Time (Dijkstra's Algorithm) | Medium | 8.5/10 | ✖ |
Dynamic Programming
| Problem | Difficulty | Leetcode | Difficulty Score | Status |
|---|---|---|---|---|
| Fibonacci Number | Easy | 5/10 | ✖ | |
| Climbing Stairs | Easy | 5/10 | ✖ | |
| Min Cost Climbing Stairs | Easy | 6/10 | ✖ | |
| House Robber | Medium | 6/10 | ✖ | |
| Unique Paths | Medium | 6/10 | ✖ | |
| Maximum Subarray (Kadane's Algorithm) | Medium | 6.5/10 | ✖ | |
| Jump Game | Medium | 7.5/10 | ✖ | |
| Coin Change | Medium | 7.5/10 | ✖ | |
| Longest Increasing Subsequence | Medium | 8/10 | ✖ | |
| Longest Common Subsequence | Medium | 10/10 | ✖ |
Bit Manipulation
| Problem | Difficulty | Leetcode | Difficulty Score | Status |
|---|---|---|---|---|
| Base 7 | Easy | 5/10 | ✖ | |
| Single Number | Easy | 6/10 | ✖ | |
| Number of 1 Bits | Easy | 8/10 | ✖ | |
| Add Binary | Easy | 9/10 | ✖ |
You must be signed in to mark questions as solved.