The only book I know of specifically on these topics was written in 2002: Data Structures and Problem Solving Using Java, by Mark Allen Weiss. It's more of a college textbook than a general guide, and of course the code techniques by now are dated. Still, if that's exactly what you want and the only thing you want, there it is.
If you're open to other ideas, I suggest instead you look for a good book or two on object-oriented design, algorithms, and problem-solving. Chances are such a book will use Java examples anyway, but getting caught thinking about solving general problems through one language, and an evolving one at that, could help you paint yourself into a corner.
Make visible what, without you, might perhaps never have been seen. - Robert Bresson