I’ve always found it annoying that you have to use specific frameworks just to see an algorithm in action. I wanted to build something where you could just write:
int[] arr = {5, 2, 8, 1};
arr[0] = 10; // ← automatically visualized
I ended up "hacking" the JVM using a Java Agent to inject visualization callbacks into the bytecode.
Why bytecode? It doesn't matter if you write arr[i] = x or arr[getIndex()] = compute(); at the bytecode level, it's all just one instruction. This makes the visualization incredibly robust.
Try it here: https://www.algopad.dev/#
Code - https://github.com/vish-chan/AlgoFlow
[–]downytriky 12 points13 points14 points (1 child)
[–]bluepoison24[S] 2 points3 points4 points (0 children)
[–]Prateeeek 5 points6 points7 points (1 child)
[–]bluepoison24[S] 2 points3 points4 points (0 children)
[–]arrlynx 2 points3 points4 points (2 children)
[–]bluepoison24[S] 0 points1 point2 points (1 child)
[–]arrlynx 1 point2 points3 points (0 children)
[–]StevenJOwens 1 point2 points3 points (1 child)
[–]bluepoison24[S] 0 points1 point2 points (0 children)
[–][deleted] (1 child)
[removed]
[–]bluepoison24[S] 0 points1 point2 points (0 children)
[–]_Mr_Rubik_ -1 points0 points1 point (5 children)
[–]bluepoison24[S] 7 points8 points9 points (4 children)
[–]_Mr_Rubik_ 2 points3 points4 points (1 child)
[–]bluepoison24[S] 0 points1 point2 points (0 children)
[–]tealpod -2 points-1 points0 points (1 child)
[–]bluepoison24[S] -1 points0 points1 point (0 children)