algovis
This is collection of projects and links about algorithm visualization.
Projects
- Setosa blog (example: Gridlock vs. Bottlenecks)
- Mathigon (example: Sieve of Eratosthenes) and beta site
- Encinographic blog (example: 2D Wave Equation)
- Emergent Mind blog (example: Perceptrons)
- The Nature of Code book (example: Oscillation)
- Game Mechanic Explorer (example: Homing Missiles)
- Pixel Shaders book proposal
- Probabilistic Models of Computation book (example: Generative Models)
- Steven Wittens (example: How to fold a Julia Fractal - click arrows on slideshows)
- Red Blob Games (example: 2D Visibility)
- Khan Academy algorithms course (example: Breadth First Search)
- Christopher Olah (example: Neural Networks, Manifolds, and Topology)
- Visualgo
- Melkman's Algorithm interactively explained
Libraries & tools
- Tailspin: JS interpreter in JS that runs an algorithm and lets the visualization inspect the local variables. Records history to allow stepping backwards too.
- Vamonos: algorithm visualizations with pseudocode shown to reader and JS version underneath, plus some useful widgets to show pseudocode, call stack, data structures
- Algomation: algorithm visualization that uses JS generators to pass control between algorithm execution and browser event loop
- Algorithm Visualizations
- LaTeX2HTML5: annotate LaTeX diagrams with interactivity when exporting to HTML
- Tangle
References
- Visualizing Algorithms
- Active Essays on the Web
- Visualizing sorting algorithms - arguing that static visualizations are better than algorithm animation
Examples
- Garbage Collection
- Spatial Hashing
- Fourier Image Filtering
- Fourier Series Visualization
- The Skyline Problem
- Animated Bézier Curves
- A Primer on Bezier Curves
- Sight And Light
- Newton-Raphson Optimization (1D)
- Newton-Raphson Optimization (2D)
- Fisher-Yates Shuffle
- Tetris in Clojure
- HyperLogLog for big data distinct values
- Cave Culling Algorithm in Minecraft
- Explanation of X11 Servers has an X11 server running in the browser!
- Manual for rot.js, a roguelike game library makes all the examples editable and viewable in the browser
- ConvNetJS neural network examples in browser (example: 2-layer neural network)