An AVL-tree is an elementary data-structure usually introduced to students of computer science during the first basic courses. The basic concept is a height balanced binary tree. After each insertion or deletion of an element rotation-algorithms are used to rebalance the tree[OW93].
The applet concentrates on the visualization of the rotation
operations
. It supports
two steps in the learning process of a student: In the first step the
algorithms are explained in that way that an example tree is build by
the applet itsself. In the second step, the student can freely build
and change a tree by inserting and deleting elements. The applet animates the
rotations after each insertion/ deletion. While it is the goal of
step one to demonstrate the mechanisms of the AVL-tree, the second step
gives the student the opportunity to get acquainted with the
concepts of the AVL-tree. The simulation can be suspended at any time for
reading the explanations for each step of the algorithm which are
displayed in a separate text field. Figure 3 shows the
screen during a rotation.
Figure 3: The AVL-Tree-Simulation
It is planned to implement a third step of the learning process by enhancing the applet with a test mode. In the test mode the student is asked to insert or delete elements and then has to rebalance the tree by hand executing rotation operations. The goal of step three is to give feedback about the success of the learning process.