ALGOTUTOR(1)
๐ฆ algotutor ๐ฆ
User Contributed Perl Documentation, the official manual for your new study bestie ๐
โจ NAME โจ
algotutor is an interactive program for observing the intermediate steps of algorithms. It's giving "watch the magic happen in slow motion" ๐ง
๐ธ SYNOPSIS ๐ธ
algotutor [OPTION] ... DATA ...
That's the whole formula, bestie: some OPTIONs, then your DATA ๐
๐ DESCRIPTION ๐
Okay so algotutor is made for computer science students and/or literally anyone who studies algorithms and/or data structures ๐ You make data files in plain text format (technically they're perl anonymous hashes, but honestly you don't need to care ๐), and algotutor runs through some predefined algorithm for you. Then you can step backward and forward through the execution sequence at different levels of detail. Main character energy ๐ It requires perl-Tk.
DATA is your input data ๐ง For the dynamic programming algorithms, lcs and matc, check their entries in the OPTIONS list below. For everything else, DATA is the name of the file holding your actual input data ๐
๐ OPTIONS ๐
-a ALGOโ this picks the algorithm to run ๐ง Right nowALGOcan be one of these:bstโ operations on binary search trees ๐ณrbtโ operations on red-black trees (remove()is not implemented yet ๐)heapโ operations on heaps. Heads up, the remove operation on a heap always removes the top element, no matter the argument ๐sbsโ stack-based search on graphs, a variant of depth first searchbfsโ breadth first search on graphsprimโ Prim's minimal spanning tree on graphs ๐ฟdijkโ Dijkstra's single-source shortest path on graphsflwaโ Floyd-Warshall's all-pair shortest path on graphs (very, very slow ๐)domโ 2-dimensional point dominationgrahamโ Graham's scan for convex hull
๐ Bestie, watch out:rbt'sremove()isn't implemented yet,heap's remove always takes the top element no matter what you pass, andflwais very, very slow.
For lcs, you pass two strings as command line arguments, like so:
algotutor -a lcs AGCTATACGATGACT GTCAGTATAGTCATATG
For matc, you pass an alternating sequence of integers and matrix names as command line arguments. Example:
algotutor -a matc 32 A 35 B 24 C 30 D 36 E 25 F 40 G 34 H 35
That one means finding the optimal multiplication sequence of the chain of matrices: A of size 32 by 35, B of size 35 by 24, ... H of size 34 by 35 ๐งฎ๐ฅ
-s VERTEXโ useVERTEXas your starting vertex ๐ (works forsbs,bfs,prim, anddijk)-i STEPโ display stepSTEPas the initial image ๐ผ๏ธ-d FILENAMEโ dump the picture intoFILENAMEas a ps file and exit immediately, skipping interactive mode ๐
๐ LICENSE ๐
This code is distributed under the GNU General Public License โจ
๐งโ๐ป AUTHOR ๐งโ๐ป
Chao-Kuei Hung, ckhung AT ofset DOT org ๐
๐ SEE ALSO ๐
Peep /usr/share/doc/algotutor/doc/ for examples and the full set of documentation ๐
That's the tea, bestie ๐ซถ This page came from perl v5.34.0, dated 2022-04-12, and it's filed under ALGOTUTOR(1) ๐ฆโจ Periodt ๐
๐ฆ where this page comes from
- debian bookworm: algotutor 0.8.6-6
- debian trixie: algotutor 0.8.6-6
- ubuntu noble: algotutor 0.8.6-6
- ๐ girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms