\begin{algorithm} \caption{Tree Traversal Recursive} \begin{algorithmic} \REQUIRE a tree $T$ using left-child, right-sibling representation \ENSURE print all keys appearing in $T$ \PROCEDURE{PrintTree}{$x$} \IF{$x == NIL$} \RETURN \ENDIF \PRINT $x.key$ \STATE $y = x.left$-$child$ \WHILE{$y \ne NIL$} \STATE \CALL{PrintTree}{$y$} \STATE $y = y.right$-$sibling$ \ENDWHILE \ENDPROCEDURE \STATE \STATE \CALL{PrintTree}{$T.root$} \end{algorithmic} \end{algorithm}