About this platform
DSA Patterns is a pattern-first learning site for coding interviews. The goal is not to mirror every LeetCode problem. It is to help you recognize the ~37 patterns that show up again and again, apply a reliable template, and understand trade-offs between approaches.
What we optimize for
- Pattern recognition, not volume. Name the technique in about 90 seconds, then practice a small set that actually trains that skill.
- Reusable templates. Interview-speed skeletons in TypeScript, Python, and C# you can adapt under pressure, not one-off snippets.
- Trade-offs when they matter. Multiple approaches only when complexity, memory, or edge cases genuinely differ (not duplicate code for its own sake).
- Honest sourcing. Every write-up restates the problem and cites LeetCode by number, title, and link.
- Local progress, no account. Mark complete, notes, confidence, and reviews stay in your browser (export/import when you want a backup).
- Solutions that run. Published approaches are checked across C#, TypeScript, and Python against the same fixtures.
Curriculum spine
37 patterns ordered by interview density: foundations (window, pointers, binary search, hashing, prefix sums), core interview patterns (stacks, heaps, graphs, trees, DP…), then advanced/expert modes (union-find, topo, segment trees, bitmask DP…). Full guides include multi-language templates, mental models, and write-up paths; some advanced patterns are still stubs. On-site write-ups cover 147 problems (TypeScript, Python, and C#, checked by the solution test suite).
Source & fair use
- Problems are restated in our own words for teaching. We do not copy LeetCode premium statements or official editorials.
- Each write-up includes a Source: LeetCode #N citation and a “Practice on LeetCode” link.
- Solutions and explanations are original teaching material for this site.
- LeetCode is a trademark of its respective owners; this project is not affiliated with LeetCode.
Tech (for contributors)
Static site: Astro, MDX, Tailwind, React islands, TanStack Query for offline progress. Content under src/content/; UI chrome under src/i18n/. Routes are locale-prefixed. Shipped locales: English and Turkish. Pattern guides are localized; problem write-ups fall back to English until translated.