This is a must read for for new developers. It introduces the concepts and various implementations of classic data structures and sorting algorithms which build the foundations for a deeper understanding of the world of software development.
Very rudimentary. It shows basic uses of some data structures with Java, but not much more than that. Personally, I'd read a book on Java and one on data structures and complexity separately.