NAME¶
algotutor - an interactive program for observing the intermediate steps of
algorithms.
SYNOPSIS¶
algotutor [OPTION] ... DATA ...
DESCRIPTION¶
algotutor is an interactive program for observing the intermediate steps of
algorithms. The target audience is computer science students and/or anyone who
studies algorithms and/or data structures. One can create data files in plain
text format (actually perl anonymous hashes, but one need not care) and let
algotutor runs through some predefined algorithm. Then one can step backward
and forward through the execution sequence of the algorithm at different
levels of details. It requires perl-Tk.
DATA is the input data. For the dynamic programming
algorithms such as lcs and matc, please see the respective entries in the
following list; for other algorithms, it is the file name containing the
actual input data.
OPTIONS¶
- -a ALGO
- Runs the algorithm ALGO. Currently ALGO can be one of:
- bst operations on binary search trees
- rbt operations on red-black trees (remove() is not
implemented yet)
- heap operations on heaps -- the remove operation on a heap always
removes the top element regardless of the argument
- sbs stack-based search on graphs, a variant of depth first
search
- bfs breadth first search on graphs
- prim Prim's minimal spanning tree on graphs
- dijk Dijkstra's single-source shortest path on graphs
- flwa Floyd-Warshall's all-pair shortest path on graphs (very, very
slow)
- dom 2-dimensional point domination
- graham Graham's scan for convex hull
- lcs longest common subsequence -- it requires two strings as the
command line arguments. For example, "algotutor -a lcs AGCTATACGATGACT
GTCAGTATAGTCATATG"
- matc optimal matrix chain multiplication -- it requires an
alternating sequence of integers and matrix names as the command line
arguments. For example, "algotutor -a matc 32 A 35 B 24 C 30 D 36 E 25
F 40 G 34 H 35" 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
- Use VERTEX as the starting vertex (for sbs, bfs, prim, and dijk)
- -i STEP
- Display step STEP as the initial image.
- -d FILENAME
- Dump the picture into FILENAME as a ps file and exit immediately without
going into interactive mode.
LICENSE¶
This code is distributed under the GNU General Public License
AUTHOR¶
Chao-Kuei Hung ckhung AT ofset DOT org
SEE ALSO¶
Please see /usr/share/doc/algotutor/doc/ for examples and the full set of
documentations.