0% found this document useful (0 votes)
14 views6 pages

100 Leetcode DSA

The document outlines a 30-day challenge called 'CodeQuest: 30-Days LeetCode Mastery' which includes 100 essential coding problems across various data structures and algorithms. Each week focuses on different topics such as arrays, strings, linked lists, trees, dynamic programming, and more, with specific problems assigned for each day. Additionally, it provides study tips for effective learning and preparation for coding interviews.

Uploaded by

yefiha1944
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views6 pages

100 Leetcode DSA

The document outlines a 30-day challenge called 'CodeQuest: 30-Days LeetCode Mastery' which includes 100 essential coding problems across various data structures and algorithms. Each week focuses on different topics such as arrays, strings, linked lists, trees, dynamic programming, and more, with specific problems assigned for each day. Additionally, it provides study tips for effective learning and preparation for coding interviews.

Uploaded by

yefiha1944
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

CodeQuest: 30-Days LeetCode Mastery

DSA Challenge [100 Essential Problems]

Created by: coding_error1

Week 1: Arrays and Strings


Day 1: Array Basics

1. Two Sum
2. Best Time to Buy and Sell Stock
3. Contains Duplicate

Day 2: Array Techniques

4. Product of Array Except Self


5. Maximum Subarray
6. 0️⃣ Move Zeroes

Day 3: String Manipulation

7. Valid Anagram
8. Valid Palindrome
9. Longest Substring Without Repeating Characters

Day 4: More Strings

10. Reverse String


11. String to Integer (atoi)
12. Longest Common Prefix

Week 2: Linked Lists and Stacks/Queues


Day 5: Linked List Basics

13. Reverse Linked List


14. Linked List Cycle
15. Merge Two Sorted Lists
Day 6: Advanced Linked Lists

16. Remove Nth Node From End of List


17. Intersection of Two Linked Lists
18. Palindrome Linked List

Day 7: Stacks and Queues

19. Valid Parentheses


20. Implement Queue using Stacks
21. Min Stack
22. Evaluate Reverse Polish Notation

Week 3: Binary Trees and Binary Search Trees


Day 8: Binary Tree Traversal

23. Binary Tree Inorder Traversal


24. Maximum Depth of Binary Tree
25. Symmetric Tree

Day 9: Binary Tree Operations

26. Invert Binary Tree


27. Path Sum
28. Lowest Common Ancestor of a Binary Tree

Day 10: Binary Search Trees

29. Validate Binary Search Tree


30. Kth Smallest Element in a BST
31. Convert Sorted Array to Binary Search Tree

Week 4: Searching and Sorting


Day 11: Binary Search

32. Binary Search


33. First Bad Version
34. Search in Rotated Sorted Array
35. Find Minimum in Rotated Sorted Array

Day 12: Sorting Algorithms


36. Sort Colors
37. Merge Intervals
38. Meeting Rooms II

Day 13: More Searching

39. Find Peak Element


40. Kth Largest Element in an Array
41. Search a 2D Matrix

Week 5: Dynamic Programming


Day 14: DP Introduction

42. Climbing Stairs


43. House Robber
44. Maximum Subarray

Day 15: 1D Dynamic Programming

45. Coin Change


46. Longest Increasing Subsequence
47. Word Break

Day 16: 2D Dynamic Programming

48. Unique Paths


49. Longest Common Subsequence
50. Maximum Product Subarray

Week 6: Graphs and BFS/DFS


Day 17: Graph Basics

51. Number of Islands


52. Clone Graph
53. Course Schedule

Day 18: BFS

54. Word Ladder


55. Minimum Depth of Binary Tree
56. Rotting Oranges
Day 19: DFS

57. Pacific Atlantic Water Flow


58. Surrounded Regions
59. Flood Fill
60. Graph Valid Tree

Week 7: Heap, Priority Queue, and Trie


Day 20: Heaps and Priority Queues

61. Top K Frequent Elements


62. Merge K Sorted Lists
63. Find Median from Data Stream

Day 21: More Heap Applications

64. K Closest Points to Origin


65. Sliding Window Maximum
66. Task Scheduler

Day 22: Trie

67. Implement Trie (Prefix Tree)


68. Word Search II
69. Design Add and Search Words Data Structure

Week 8: Bitwise Operations and Math


Day 23: Bit Manipulation

70. 1️⃣ Single Number


71. Counting Bits
72. Number of 1 Bits
73. Missing Number

Day 24: Math Problems

74. Pow(x, n)
75. Happy Number
76. Excel Sheet Column Number
77. 0️⃣ Factorial Trailing Zeroes
Week 9: Design and Advanced Topics
Day 25: System Design Questions

78. LRU Cache


79. Design Twitter
80. Serialize and Deserialize Binary Tree

Day 26: Advanced Techniques

81. Meeting Rooms II


82. Trapping Rain Water
83. Find the Duplicate Number
84. Longest Consecutive Sequence

Week 10: More Advanced Topics and Review


Day 27: Sliding Window

85. Minimum Window Substring


86. Sliding Window Maximum
87. Longest Repeating Character Replacement

Day 28: Greedy Algorithms

88. Jump Game


89. Gas Station
90. ↔️ Non-overlapping Intervals
91. Partition Labels

Day 29: Backtracking

92. Letter Combinations of a Phone Number


93. Generate Parentheses
94. Permutations
95. Subsets
96. Word Search

Day 30: Final Review and Challenging Problems

97. Longest Palindromic Substring


98. Longest Increasing Path in a Matrix
99. Alien Dictionary
100. Median of Two Sorted Arrays

Study Tips
1. Consistent Practice: Solve at least the daily questions, even if just for 1-2 hours
2. Understand Solutions: Don't just solve problems, understand the approach
3. Time Your Solutions: Practice with a timer to prepare for real interviews
4. Review Regularly: Go back to problems you've solved to reinforce learning
5. Track Progress: Keep notes on problem patterns and techniques you learn

Good luck with your 30-day LeetCode challenge!

You might also like