Implementations · Cost comparisons
ADT Explorer
Compare lists, stacks, queues, maps, sets, and priority queues across implementations.
Open labExplore · Step through · Practice
Explore how algorithms work, one decision at a time. Find a topic, open a demonstration, and experiment with its inputs and operations.
16 demonstrations across 7 topics
Showing all 16 demonstrations
Each lab opens in this tab.
Explore abstract data types and ways to approach algorithmic problems.
Implementations · Cost comparisons
Compare lists, stacks, queues, maps, sets, and priority queues across implementations.
Open labKnapsack · Design strategies
Connect search, decision, counting, and optimization to algorithm design strategies.
Open labExplore hashing, collision handling, and storage and operation choices.
Collisions · Load factor
Compare chaining and linear probing, follow hash formulas, and observe resizing.
Open labExplore priority queues, search trees, traversals, and balancing.
Priority queues · Step by step
Generate a heap and step through tail insertion, root removal, and percolation.
Open labSearch trees · Step by step
Generate random or skewed trees, then step through add, remove, search, and traversal.
Open labDSA II · LL, RR, LR & RL
Explore insertion, deletion, and search with bottom-up balance checks and separate rotation steps.
Open labExplore traversal, representation choices, and shortest-path decisions.
Queues · Call stacks · Traversal forests
Follow discovery, neighbor checks, and completion using BFS and recursive DFS on the same editable graph.
Open labSparse & dense · Storage & operation costs
Compare adjacency matrices and lists on the same graph, then inspect edge lookups and neighbor scans.
Open labShortest paths · Priority queues
Choose a source, follow edge relaxation, and trace shortest routes in a weighted graph.
Open labWatch sorting algorithms run, or practice arranging the cards yourself.
Four algorithms · Stability
Follow selection, insertion, merge, and quick sort while tracking equal-key stability.
Open labHands-on practice · Undo
Reorder cards by dragging or swapping and explore sorted order, stability, and undo.
Open labExplore asymptotic bounds and the work performed by recursive algorithms.
O, Θ & Ω · Constants & thresholds
Compare growth functions and adjust bound constants while separating finite evidence from asymptotic claims.
Open labDSA II · Level costs & Master method
Expand recursive levels, inspect subproblem work, and connect the exact sum with its asymptotic growth.
Open labStart with a specific problem and compare algorithm choices and solution strategies.
Compression · Prefix codes
Build a prefix-code tree through successive merges, inspect codes, and encode a message.
Open labPacking heuristics · Online & offline
Compare online packing rules with decreasing-order offline variants using unit-capacity bins.
Open labDSA II · Brute force, divide & conquer, Kadane
Compare three exact algorithms with candidate intervals, call stacks, and element-sum operation counts.
Open labTry another keyword or clear the topic filter.