30-Day Plan to Master These Topics
Week 1: Get Comfortable with Arrays (Day 1–7)
Concepts to Learn:
- What is an array?
- Basic operations: traversal, insertion, deletion
- Finding min, max, sum, average
Practice Questions:
- Reverse an array
- Find max and min
- Sort an array
- Move all zeroes to the end
Tip: Try solving 2 easy problems daily from platforms like LeetCode, HackerRank, or Campusmonk.
Week 2: Master Array Patterns (Day 8–14)
Concepts to Learn:
- Two-pointer approach
- Sliding window technique
- Hashing in arrays
Practice Questions:
- Two sum
- Subarray with given sum
- Count pairs with given sum
- Find missing number
Tip: Focus on understanding the logic, not memorizing code. Write dry runs on paper.
Week 3: Learn String Basics + Patterns (Day 15–21)
Concepts to Learn:
- String manipulation basics
- Frequency count using arrays/dictionaries
- Palindrome and anagram logic
Practice Questions:
- Check if string is palindrome
- Remove duplicates
- Count vowels and consonants
- Find maximum occurring character
Tip: Start writing your own functions instead of using built-in ones immediately.
Week 4: Start Recursion (Day 22–27)
Concepts to Learn:
- What is recursion?
- Base case and recursive call
- Factorial, Fibonacci using recursion
Practice Questions:
- Factorial of a number
- Sum of digits using recursion
- Reverse a string using recursion
- Print subsets of a string
Tip: Recursion is tricky at first. Try drawing recursion trees to visualize the flow.
Final Days: Mock + Revision (Day 28–30)
Use these 3 days to:
- Revise all topics
- Re-solve the problems you got wrong earlier
- Take 2 mock coding rounds (30 mins each)
Tip: Don’t start new topics now. Focus on what you’ve already covered. Build confidence.