In this paper we investigate the potential of interactive
visualization for teaching the theory of NP-completeness
to undergraduate students of computer science. Based
on this analysis we developed some interactive
Java applets which we use to present an NP-complete tiling problem
PUZZLE in our lecture.
This software is integrated into our hypertext lecture notes and our
students also use it to find an NP-completeness proof for PUZZLE
as an exercise.