Welcome to the Java Forums jac!
Sorry to hear about your poor experience with that book. Have you studied other languages before.. such as C or C++ ? Or is Java your first language? I ask because when learning data structures, it's important to realize a decent level of abstraction... and sometimes Java can hide levels of abstraction from you(see the Collections and LinkedList classes, for example). When you understand fundamental data structures, the general consensus is that you should be able to write them in any language you are proficient in. In my ultimate and humble opinion, if you want to fully comprehend data structures while programming - attempt writing them in C. Once you have a fundamental comprehension down, come back to Java and write them out or use any of the ready-made classes available in the API for your purposes. If you decide to stick with Java to learn structures, I
highly recommend this book by Sedgewick, although I must confess I've only skimmed the series.. I do however own the C++ series and even though C++ is an OO language, Sedgewick uses true C code for his C++ series, and after skimming his Java series, I found them to be less reliant on the API - which is what you have to do, and is my point, when you want to really understand structures at the lowest level of abstraction possible.
Best of luck and see you around!