A human tutor can take pauses when something isn't clear, but a visualizer is forced to choose between checking for the user's understanding and not interrupting the flow.
Link on BFS and Topological Sorting for instance:
A human tutor can take pauses when something isn't clear, but a visualizer is forced to choose between checking for the user's understanding and not interrupting the flow.
Link on BFS and Topological Sorting for instance:
Most of the time, what you want is not a clever visualization of a complex algorithm, but a simple distillation of its essence. Static diagrams are usually simpler than visualizations. And if you feel the inherent complexity can only be conveyed with animation, it's likely you haven't fully distilled your understanding.
But even in that example, while the animation instantly conveys the high-level idea, it's still a bit magical: "I get what's happening, but not exactly how." To understand in detail what's going on, carefully chosen freeze frames with an explanation would probably be better, especially complemented by the animation. The ability to slow down, reverse, and interact could work too here.
https://youtu.be/yYAw79386WI?t=214
I agree it's a great explanation, and the video format feels right for this. Still, it's not the video per se that makes this great, but the way the concept has been broken down into simple (almost unmoving) parts for you, and is then built up in steps.
I built something similar while learning for my algorithms course ate university. [0]
It not fully polished yet and not algorithms I had planned to implement are done yet. But I learned a lot doing it and some algorithms like "rotating calippers" or delaunay triangulation are really fun to watch.
Usage: click the canvas to create nodes, drag from their border to connect them. Click the "algorithms" tab on the top and select an algorithm to run in the right sidebar. The use the slider to step through the result.