Data structures in Java from abstract data to the Java Collections Framework - Gray, Simon (Simon James McLean) (Pearson Addison-Wesley, 2007)