Data Structures and algorithms in Java - Drozdek, Adam (Brooks/Cole, Australia, 2001)