Blind 75 Leetcode Problem to crack DSA Interview.
Preparing for an interview and need to brush up on Data Structures and Algorithms (DSA) quickly? I've got you covered with an efficient strategy: Blind 75. Here's how it works:Week 1
# | Question | Notes | Difficulty | Youtube |
---|---|---|---|---|
1 | ![]() | Use a hashmap to store complements of each element. | Easy | |
2 | ![]() | Use a stack to keep track of open parentheses. | Easy | |
3 | ![]() | Merge lists recursively or iteratively. | Easy | |
4 | ![]() | Keep track of minimum price and maximum profit. | Easy | |
5 | ![]() | Use two pointers approach. | Easy | |
6 | ![]() | Swap left and right child recursively. | Easy | |
7 | ![]() | Count characters or sort and compare strings. | Easy | |
8 | ![]() | Implement binary search algorithm. | Easy | |
9 | ![]() | Use depth-first search or breadth-first search. | Easy | |
10 | ![]() | Traverse the tree recursively or iteratively. | Easy | |
11 | ![]() | Check the height difference of left and right subtrees. | Easy | |
12 | ![]() | Use two pointers approach. | Easy | |
13 | ![]() | Implement enqueue and dequeue using two stacks. | Easy |
Week 2: Transition from Easy to Medium
# | Question | Notes | Difficulty | Youtube |
---|---|---|---|---|
14 | ![]() | Use binary search to find the first bad version. | Easy | |
15 | ![]() | Use a hashmap to store characters in the magazine. | Easy | |
16 | ![]() | Use dynamic programming to solve. | Easy | |
17 | ![]() | Count characters to form a palindrome. | Easy | |
18 | ![]() | Iteratively reverse the linked list. | Easy | |
19 | ![]() | Use Boyer-Moore Voting Algorithm. | Easy | |
20 | ![]() | Use bitwise operations. | Easy | |
21 | ![]() | Calculate the height of the left and right subtrees. | Easy | |
22 | ![]() | Use two pointers approach. | Easy | |
23 | ![]() | Use depth-first search. | Easy | |
24 | ![]() | Use a hashmap to check duplicates. | Easy | |
25 | ![]() | Use Kadane’s Algorithm. | Medium |
Week 3: Medium
# | Question | Notes | Difficulty | Youtube |
---|---|---|---|---|
27 | ![]() | Use breadth-first search or dynamic programming. | Medium | |
28 | ![]() | Use a priority queue or quickselect algorithm. | Medium | |
29 | ![]() | Use a sliding window approach. | Medium | |
30 | ![]() | Use two pointers or hashing. | Medium | |
31 | ![]() | Use breadth-first search or depth-first search. | Medium | |
32 | ![]() | Use depth-first search or breadth-first search. | Medium | |
33 | ![]() | Use a stack to evaluate the expression. | Medium |
Week 4: Medium To Hard
# | Question | Notes | Difficulty | Youtube |
---|---|---|---|---|
35 | ![]() | Implement trie data structure. | Medium | |
36 | ![]() | Use dynamic programming or recursion with memoization. | Medium | |
37 | ![]() | Use prefix and suffix products. | Medium | |
38 | ![]() | Use an additional stack to keep track of minimum element. | Medium | |
39 | ![]() | Use recursive or iterative inorder traversal. | Medium | |
40 | ![]() | Use depth-first search or breadth-first search. | Medium | |
41 | ![]() | Use breadth-first search. | Medium |
Week 5: Half Way
# | Question | Notes | Difficulty | Youtube |
---|---|---|---|---|
43 | ![]() | Use backtracking or dynamic programming. | Medium | |
44 | ![]() | Use backtracking to generate permutations. | Medium | |
45 | ![]() | Merge overlapping intervals. | Medium | |
46 | ![]() | Use recursive traversal or parent pointers. | Medium | |
47 | ![]() | Implement with a hashmap and binary search. | Medium | |
48 | ![]() | Use union-find or depth-first search. | Medium | |
49 | ![]() | Use Dutch National Flag algorithm. | Medium |
Week 6: Medium
# | Question | Notes | Difficulty | Youtube |
---|---|---|---|---|
51 | ![]() | Use dynamic programming or backtracking with memoization. | Medium | |
52 | ![]() | Handle edge cases and convert string to integer. | Medium | |
53 | ![]() | Simulate spiral traversal. | Medium | |
54 | ![]() | Generate all possible subsets using backtracking. | Medium | |
55 | ![]() | Use depth-first search or breadth-first search. | Medium | |
56 | ![]() | Use dynamic programming or expand around center approach. | Medium | |
57 | ![]() | Use dynamic programming to calculate unique paths. | Medium | |
58 | ![]() | Build tree recursively from preorder and inorder traversal. | Medium |
Week 7: Medium
# | Question | Notes | Difficulty | Youtube |
---|---|---|---|---|
60 | ![]() | Generate letter combinations using backtracking. | Medium | |
61 | ![]() | Use depth-first search with backtracking. | Medium | |
62 | ![]() | Use sliding window with hashmap. | Medium | |
63 | ![]() | Find the center of the graph using iterative removal. | Medium | |
64 | ![]() | Schedule tasks to minimize idle time. | Medium | |
65 | ![]() | Implement a data structure using hashmap and doubly linked list. | Medium |
Week 7: Hard
# | Question | Notes | Difficulty | Youtube |
---|---|---|---|---|
67 | ![]() | Use sliding window with hashmap. | Hard | |
68 | ![]() | Implement using preorder traversal. | Hard | |
69 | ![]() | Use two pointers or stack. | Hard | |
70 | ![]() | Use two heaps or balanced binary search tree. | Hard | |
71 | ![]() | Use breadth-first search with backtracking. | Hard | |
72 | ![]() | Use stack to evaluate expressions. | Hard | |
73 | ![]() | Use dynamic programming with binary search. | Hard | |
74 | ![]() | Use heap or divide and conquer approach. | Hard | |
75 | ![]() | Use stack to find the maximum area. | Hard |