Data structures and algorithms in Java : [updated for Java 5.0] - Goodrich, Michael T.; Tamassia, Roberto (John Wiley & Sons, 2006)