Skip to content

Programming#

Interview-focused data structures, algorithms, and software design — Python-first, with curated problem sheets and 500+ pattern solutions.

New here?

Start with Data Structures Overview, then pick one DSA Pattern track below.

What's in this section#

Track Pages Best for
Data Structures 12 Implementations, complexity, when to use each structure
Algorithmic Concepts 7 Big-O, recursion, sorting, searching, greedy vs DP
DSA Patterns 23 · 504 problems Pattern recognition + full Python solutions
DSA Sheets 4 curated lists Blind 75, Grind 75, LC Top 150, NeetCode 150
Design Patterns 3 + overview OOP patterns (Java) + interview design problems
DSA Venn Explorer External tool Compare overlap across interview lists

2-week sprint (interview soon)#

  1. Complexity — Big-O cheat sheet
  2. Data Structures Overview — pattern recognition table
  3. Patterns: Two PointersSliding WindowBinary SearchTreeGraph
  4. Practice: Blind 75 with Venn Explorer
  5. Capstone: Challenge Yourself (LRU, TimeMap, etc.)

2-month deep prep#

  1. All Data Structures pages (implement from scratch once)
  2. Algorithmic Concepts — Recursion, Sorting, Searching, Greedy vs DP
  3. DSA Patterns in order: Foundations → Linear → Trees & Graphs → Advanced → Capstone
  4. DSA Sheets — Grind 75 or NeetCode 150, using pattern links instead of re-reading solutions
  5. Design Patterns overview + Challenge Yourself

Pattern quick-reference#

You see… Reach for… Doc
Sorted array + pair sum Two pointers 01. Two Pointers
Subarray with constraint Sliding window / prefix sum 03 · 00
Linked list cycle Fast & slow 02. Fast and Slow
Next greater element Monotonic stack 08. Stack
K-th largest / merge K lists Heap 15. Heaps
Shortest path / connectivity BFS / Union-Find 17. Graph
Overlapping intervals Sort + merge 04. Overlapping Intervals
Optimal substructure DP 13. Dynamic Programming
Try all combinations Backtracking 12. Backtracking

How the pieces connect#

flowchart LR
    DS[Data Structures] --> PAT[DSA Patterns]
    AC[Algorithmic Concepts] --> PAT
    PAT --> SHEET[DSA Sheets]
    PAT --> CHAL[Challenge Yourself]
    SHEET --> VENN[Venn Explorer]
    PAT --> DS
  • Data Structures teach what and how (implementations).
  • Algorithmic Concepts teach why (complexity, recursion, trade-offs).
  • DSA Patterns teach when (recognition + solutions).
  • DSA Sheets are practice lists — solutions link back to Patterns when available.

External resources#