bugl
bugl
HomeLearnPatternsPathsSearchPremium
HomeLearnPatternsPaths
← Learn

DSA

A data-structures and algorithms path with visual simulations and practice for the patterns that show up in puzzles.

Chapter 1

DSA Tutorial

What data structures and algorithms are, and how to reason about a simple algorithm before working with specific structures.

Chapter 2

Arrays

Array operations paired with the classic comparison sorts — bubble, selection, and insertion — worked through step by step.

Chapter 3

Linked Lists

Singly and doubly linked lists, how nodes actually sit in memory, and when they beat a plain array.

Chapter 4

Stacks & Queues

Push, pop, enqueue, and dequeue mechanics, and the everyday problems each structure is built to solve.

Chapter 5

Hash Tables

Hashing explained from the ground up, then applied through hash sets and hash maps for near-constant-time lookups.

Chapter 6

Trees

Binary trees and the pre-order, in-order, and post-order traversals used to walk them.

Chapter 7

Graphs

Graph representations plus breadth-first and depth-first traversal for modeling networks and relationships.

Chapter 8

Shortest Path

Weighted shortest-path algorithms — Dijkstra's for non-negative edges, Bellman-Ford when negative weights are in play.

Chapter 9

Minimum Spanning Tree

Connecting every node in a graph at the lowest total cost with Prim's and Kruskal's algorithms.

Chapter 10

Maximum Flow

Pushing the most flow through a network using the Ford-Fulkerson and Edmonds-Karp algorithms.

Chapter 11

Time Complexity

Big O analysis applied back to the sorting algorithms already covered, so runtime tradeoffs become concrete.

Chapter 12

DSA Reference

Reference algorithms worth knowing by name: the Euclidean algorithm, Huffman coding, and the traveling salesman problem.

Chapter 13

Practice

Solvable DSA practice backed by real puzzle routes.