Data structures and algorithm analysis in Java - Weiss, Mark Allen (Pearson Addison-Wesley, 2007)