Practice these 43 problems to build your foundation in Data Structures and Algorithms. If you are struggling with DSA or have no knowledge in problem solving, this is the best place to start. At the end, you will master core DSA concepts and will be able to solve any EASY-tagged problem within 15 minutes. No prerequisite needed.
DAILY43: Algorithmic Problems for Coding Interviews: Easy level, C++ edition. Get the book to follow along this repository with detailed explanation of related concepts and level up.

Problem # | Difficulty Level | Concepts | Time to solve (in minutes) |
---|---|---|---|
Problem 1 | Easy | Hash Set, Binary Search, Two Pointer | 15 min |
Problem 2 | Easy | Stack | 20 min |
Problem 3 | Easy | Linked List, Bi-Traversal | 20 min |
Problem 4 | Easy | Array, Dynamic Programming | 15 min |
Problem 5 | Easy | String, Two Pointer approach | 15 min |
Problem 6 | Easy | Binary Tree, Recursion | 15 min |
Problem 7 | Easy | String, Frequency counting | 15 min |
Problem 8 | Easy | Graph / Matrix, BFS / DFS | 15 min |
Problem 9 | Easy | Graph, BFS / DFS | 15 min |
Problem 10 | Easy | Binary Tree, Height, Recursion | 15 min |
Problem 11 | Easy | Linked List, Fast Slow Pointer | 15 min |
Problem 12 | Easy | Queue, Stack, Augmented Data Structure | 20 min |
Problem 13 | Easy | Array, Search, Binary Search | 15 min |
Problem 14 | Easy | Fibonacci sequence, Dynamic Programming, Binet Formula | 15 min |
Problem 15 | Easy | String, Frequency counting | 15 min |
Problem 16 | Easy | Linked List | 15 min |
Problem 17 | Easy | Array, Frequency counting | 20 min |
Problem 18 | Easy | String, Bitwise operations | 20 min |
Problem 19 | Easy | Binary Tree, Height, Recursion | 20 min |
Problem 20 | Easy | Binary Tree, Height, Recursion | 20 min |
Problem 21 | Easy | Linked List, Fast Slow Pointer | 20 min |
Problem 22 | Easy | Array, Frequency Counting, Hash Set | 20 min |
Problem 23 | Easy | Array, Mapping / Hash Set | 20 min |
Problem 24 | Easy | String, Stack, Two Pointer | 20 min |
Problem 25 | Easy | Bitwise operation, Dynamic Programming | 20 min |
Problem 26 | Easy | Binary Tree, Recursion | 20 min |
Problem 27 | Easy | Bitwise operation | 20 min |
Problem 28 | Easy | Array, Frequency counting, XOR | 20 min |
Problem 29 | Easy | Array, Two Pointer Approach, Swap | 20 min |
Problem 30 | Easy | Array, Sorting, XOR | 20 min |
Problem 31 | Easy | Bitwise operation | 20 min |
Problem 32 | Easy | Linked List, Slow Fast Pointer | 20 min |
Problem 33 | Easy | Binary Tree, Recursion | 20 min |
Problem 34 | Easy | Array, Sorting, Two Pointer Approach | 20 min |
Problem 35 | Easy | Triangle, Mathematics | 20 min |
Problem 36 | Easy | Array, Prefix Sum | 20 min |
Problem 37 | Easy | Array, Greedy | 20 min |
Problem 38 | Easy | Array, Sorting, Hash Set | 20 min |
Problem 39 | Easy | Array, Frequency counting | 20 min |
Problem 40 | Easy | String, Dynamic Programming, Two Pointer Approach | 20 min |
Problem 41 | Easy | Game Theory, Dynamic Programming | 20 min |
Problem 42 | Easy | Array, Dynamic Programming | 20 min |
Problem 43 | Easy | String, Sliding Window | 20 min |