DSA Practice Guide | Resources by Shumbul Arifa

💻 DSA Practice Guide

DSA is not about grinding 500 problems. It's about spotting a handful of patterns. Learn those, and most problems start to look familiar.

🧩 Pattern-based 🌱 Beginner-friendly ⏱️ ~8 weeks

The 8 patterns that cover most problems

If you learn to spot these, you can solve the large majority of interview questions. Master them in this order.

PatternUse it whenClassic example
1 Two PointersA sorted array, or you compare from both endsPair with target sum
2 Sliding WindowLongest / shortest subarray or substringLongest substring without repeats
3 HashingYou need fast lookups or countsTwo Sum, group anagrams
4 Binary SearchSorted data, or "find the smallest X that works"Search in rotated array
5 Stacks / QueuesMatching, nesting, or next-greater problemsValid parentheses
6 Trees / BFS & DFSHierarchies, levels, or "explore everything"Level-order traversal
7 Recursion / BacktrackingTry all combinations, undo, try againSubsets, permutations
8 Dynamic ProgrammingOverlapping subproblems, "min / max / count ways"Climbing stairs, coin change

An 8-week plan that won't burn you out

Weeks 1-2: Arrays, strings, hashing, two pointers, sliding window. These show up everywhere. ~2 problems/day.
Weeks 3-4: Binary search, stacks, queues, linked lists. Learn to reason about pointers calmly.
Weeks 5-6: Trees, BFS, DFS, recursion. Draw the tree on paper before you code.
Weeks 7-8: Backtracking and gentle DP. Do not fear DP, start with the classic 5 and build intuition.

How to actually practice (the part most people skip)

Free places to practice

Remember: consistency beats intensity. 2 problems a day for 8 weeks is ~112 problems, more than enough to walk into interviews with real confidence.

🌱 New to DSA? Read this first

You do not need to be "good at math". You need to recognize patterns and practice a little every day. Aim for 1 to 2 problems a day, not 20 on Sunday. Quality over quantity, always. Stuck on a problem? Tap ✦ Ask AI to get a hint without spoiling the whole solution.