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.