Data structures in Java - Standish, Thomas A. (Addison-Wesley, 1998)