Interactive Data Structures & Algorithms

Visually master core computer science concepts through real-time, interactive animations.

Linear Structures

Array

Contiguous memory locations holding elements. Supports O(1) random access.

Linked List

Nodes containing data and pointers. Dynamic sizing with O(1) head insertion.

Stack

LIFO (Last-In-First-Out) structure. Supports O(1) push, pop, and peek functions.

Queue

FIFO (First-In-First-Out) structure. Features enqueue and dequeue operations.

Sorting & Searching

Binary Search

O(log n) search algorithm that halves the search space in a sorted array.

Bubble Sort

Repeatedly swaps adjacent elements if they are in the wrong order.

Selection Sort

Finds the minimum element and places it at the beginning.

Insertion Sort

Builds the sorted array one item at a time by inserting elements.

Merge Sort

Divide and conquer O(n log n) recursive sorting algorithm.

Quick Sort

Efficient divide and conquer algorithm leveraging a pivot partition.

Infix to Postfix/Prefix

Shunting-yard algorithm for parsing mathematical expressions.

Trees

Binary Search Tree

Hierarchical structure where left children are smaller, right are larger.

AVL Tree

Strictly height-balanced BST utilizing LL, LR, RR, and RL rotations.

Red-Black Tree

Self-balancing BST utilizing coloring rules and bounds to maintain height.

Trie

Prefix tree for strings. Excellent for dictionaries and autocomplete.

Heaps & Hashing

Min/Max Heap

Complete binary trees featuring extreme value extraction using bubble-up/down.

Heap Sort

O(n log n) sorting by extracting from a heapified array.

Hashing

Demonstrates Chaining, Linear Probing, and Quadratic Probing.

Graphs

BFS (Breadth-First)

Level-order graph traversal utilizing a Queue.

DFS (Depth-First)

Branch-deep graph traversal utilizing a Stack or Recursion.

A* Search

Intelligent, heuristic-based shortest pathfinding algorithm.

Greedy

Makes locally optimal choices at each stage without backtracking.

Topological Sort

Orders Directed Acyclic Graphs (DAGs) using Kahn's algorithm or DFS.