Data structures and algorithms in Java - Goodrich, Michael T. (John Wiley & Sons, 2006)