dsa / arrays
DSA Basics: Arrays and Linear Search
A beginner-friendly DSA tutorial that explains arrays, indexes, linear search, complexity, mistakes, and practice problems.
Read lessonLearn DSA
Follow a practical learning path from arrays and stacks to trees and graphs. Each lesson focuses on clear examples, common mistakes, complexity, and practice prompts.
This section is built as a readable DSA course, not a thin list of posts. The goal is to help beginners understand the mechanics of each topic before trying harder problems.
Read lessons in order, run the visualizers, then solve the practice prompts at the end of each article.
Core linear structures and search techniques that make later topics easier.
dsa / arrays
A beginner-friendly DSA tutorial that explains arrays, indexes, linear search, complexity, mistakes, and practice problems.
Read lessondsa / stack
Learn stack operations, LIFO behavior, common use cases, and implementation patterns.
Read lessondsa / queue
Learn queue operations, FIFO behavior, and why queues are used for ordered processing.
Read lessondsa / deque
Learn the double-ended queue, where both front and rear support insert and remove operations.
Read lessondsa / linked-list
Learn nodes, head pointers, next links, traversal, insertion, and deletion in a singly linked list.
Read lessondsa / doubly-linked-list
Learn how doubly linked lists use next and previous links for two-way traversal.
Read lessondsa / patterns
Learn the common tricky patterns that appear again and again in array and linked-list problems.
Read lessondsa / binary-search
Learn binary search on sorted arrays with the left, right, and mid pointer pattern.
Read lessonReusable techniques plus trees and graphs for building stronger problem-solving range.
dsa / sliding-window
Learn fixed and variable sliding windows for subarray and substring problems.
Read lessondsa / prefix-sum
Learn prefix sums for fast range queries and subarray-sum problems.
Read lessondsa / hash-map
Learn hash maps for fast lookup, counting, grouping, and classic two-sum style problems.
Read lessondsa / recursion
Learn recursion through base cases, recursive calls, call stacks, and common beginner mistakes.
Read lessondsa / sorting
Learn why sorting changes problem difficulty and compare common sorting algorithms.
Read lessondsa / trees
Learn tree terminology, traversal order, and how recursive thinking applies to hierarchical data.
Read lessondsa / graphs
Learn graph terminology, adjacency lists, BFS, DFS, and when graph thinking is useful.
Read lesson