Data structures and algorithms in Java - Drozdek, Adam (Thomsom learning, 2001)