logo
SEE ALGORITHMS
SORTING
    Bubble Sort
    Insertion Sort
    Selection Sort
    Heap Sort
    Merge Sort
    Quick Sort
    Radix Sort

Visualize the LogicBehind the Code

From sorting and searching to more advanced data structures and algorithms, See Algorithms provides a hands-on approach to learning. Each animation is carefully crafted to walk you through the inner workings of various algorithms, step by step. Whether you're a student seeking to solidify your knowledge, an educator looking for dynamic teaching tools, or simply someone with a passion for computer science, you'll find value in our extensive library of visual resources. Explore our articles to deepen your understanding.

New Features: Elevate your learning with AI-powered insights, explore fearlessly with Undo / Redo, save custom setups to resume instantly, and embed interactive visualizers directly into your own website.

Visualization Preview
AVL Tree visualization

Use the controls to pause/resume animations, tweak inputs, or generate a shareable URL for the current graph or tree.


Algorithm Catalog

Browse all 30+ interactive visualizations. Search by name, category, or complexity to find the exact algorithm you need.

All (29)
Sorting (7)
Graph (9)
Data Structures (6)
Advanced Trees (5)
Other (2)
​
Sorting
O(n²)

Bubble Sort

Repeatedly steps through the list, compares adjacent elements, and swaps them if they are in the wrong order.

Beginner

Launch Visualizer
Sorting
O(n²)

Insertion Sort

Builds a sorted array one element at a time by repeatedly taking the next item and inserting it into place.

Sorting
O(n²)

Selection Sort

Divides the array into sorted and unsorted regions, repeatedly finding and placing the smallest remaining item.

Sorting
O(n log n)

Heap Sort

Converts the array into a binary heap, then systematically extracts the root element to build the sorted list.

Intermediate

Launch Visualizer
Sorting
O(n log n)

Merge Sort

Recursively divides the array into halves, sorts each half, and merges the sorted sublists back together.

Intermediate

Launch Visualizer
Sorting
O(n log n)

Quick Sort

Partitions elements around a chosen pivot, then recursively sorts the resulting smaller and larger partitions.

Intermediate

Launch Visualizer
Sorting
O(n · d)

Radix Sort

Processes numbers digit by digit from least to most significant, sorting values without direct key comparisons.

Intermediate

Launch Visualizer
Graph
O(V + E)

Depth First Search

Traverses graphs by exploring as far as possible down each branch before backtracking to unvisited paths.

Graph
O(V + E)

Breadth First Search

Traverses graphs level by level, exploring every neighbor at the current depth before descending deeper.

Graph
O(E log V)

Prim's Algorithm

Grows a minimum spanning tree from a starting vertex by greedily adding the cheapest adjacent edge at each step.

Intermediate

Launch Visualizer
Graph
O(E log V)

Kruskal's Algorithm

Builds a minimum spanning tree across the entire graph by connecting edges in increasing order of weight without cycles.

Intermediate

Launch Visualizer
Graph
O(E log V)

Borůvka's Algorithm

Constructs a minimum spanning tree by simultaneously selecting the cheapest outgoing edge from every connected component.

Graph
O(E log V)

Dijkstra's Algorithm

Finds the shortest path from a starting vertex to all other nodes in a directed or undirected weighted graph.

Intermediate

Launch Visualizer
Graph
O(V + E)

Topological Sorting

Produces a linear ordering of vertices in a DAG such that every directed edge uv has vertex u appearing before v.

Intermediate

Launch Visualizer
Graph
NP-Complete

Hamiltonian Cycle

Determines whether a graph contains a closed tour that visits every vertex exactly once and returns to the start.

Graph
O(V + E)

Eulerian Cycle

Determines whether a graph contains a continuous trail that traverses every edge exactly once without repeating.

Data Structures
O(n)

Linked List

Stores data as a sequential chain of nodes where each element holds its value and a reference to the next node.

Data Structures
O(n)

Doubly Linked List

Maintains nodes with two-way references, enabling efficient forward and backward traversal through the list.

Data Structures
O(1)

Circular Queue

Organizes a FIFO buffer into a closed ring, reconnecting the tail back to the head for efficient fixed-size queuing.

Data Structures
O(L)

Trie (Prefix Tree)

An ordered tree that stores strings by sharing common prefixes, providing fast retrieval and auto-completion.

Intermediate

Launch Visualizer
Data Structures
O(log n)

Binary Heap

A complete binary tree that maintains the heap order property for instant access to the minimum or maximum element.

Intermediate

Launch Visualizer
Data Structures
O(log n)

Binary Search Tree

A binary tree where each left child is smaller and each right child is larger than their parent node.

Advanced Trees
O(log n)

AVL Tree

A self-balancing binary search tree that maintains height differences of at most one via tree rotations.

Advanced Trees
O(log n)

Red-Black Tree

A self-balancing search tree using node colors and restructuring rules to guarantee logarithmic search depth.

Advanced Trees
O(log n)

Splay Tree

A self-adjusting search tree that splays recently accessed nodes to the root for optimized repeated queries.

Advanced Trees
O(log n)

B-Tree

A balanced multi-way tree with broad branching, optimized for reading and writing large blocks of disk storage.

Advanced Trees
O(log n)

B+ Tree

A B-tree variant with data exclusively in leaves linked in sequence, optimized for high-throughput range scans.

Other
O(n · h)

Convex Hull

Finds the smallest convex polygon that completely encloses a given set of two-dimensional points.

Intermediate

Launch Visualizer
Other
O(n log n)

Huffman Coding

Compresses data by assigning shorter bit sequences to frequent characters and longer codes to rarer ones.

Intermediate

Launch Visualizer
Side-by-Side Comparison

See two algorithms run simultaneously on identical inputs to compare trade-offs:

BFS vs DFS

Breadth vs Depth traversal


Built for Deep Conceptual Understanding

Everything you need to experiment, analyze, and retain algorithm mechanics.

Visual Learning

Stop guessing what happens inside the loop. Our visualizer isolates and highlights the algorithm's exact decisions as they occur.

Playback Control

Don't just watch — control the flow. Pause, resume, and step through animations at your own pace to truly understand the algorithm's behavior.

Custom Inputs

Move beyond static examples. Draw custom directed or undirected graphs, edit weights, create binary trees, or input your own numbers to sort.

Share Insights

Created a tricky graph or a specific tree structure? Generate a unique URL to share your exact visualization setup with peers or students instantly.

NEW
AI Summary

Get AI-powered breakdowns of your custom graph algorithms and tree operations to bridge the gap between visualization and deep understanding.

NEW
Undo & Redo

Made a mistake? No problem. Seamlessly step backward and forward through your graph algorithm setup and rebalanced tree structure.

NEW
Save Data

Don't start from scratch. Save your custom graph layouts and complex data structures to your library to revisit and refine your experiments anytime.

NEW
Embed Visualizers

Seamlessly embed any of the interactive algorithm or data structure directly into your own website, blog, or educational materials.

Bridge the Gap Between Code and Concept

Textbooks and code editors can sometimes make logic feel abstract. SEE ALGORITHMS transforms complex logic into clear, step-by-step visualizations. Whether you are analyzing a directed graph or balancing a binary tree, our platform provides a focused, distraction-free environment to experiment and learn.

© 2025 See Algorithms. Code licensed under MIT, content under CC BY-NC 4.0