Problem solving with data structures using Java : a multimedia approach - Guzdial, Mark; Ericson, Barbara (Prentice Hall, 2011)