Data Structures and Algorithm Analysis in Java is an advanced algorithms book that fits between traditional CS2 and Algorithms Analysis courses In the old ACM Curriculum Guidelines this course was known as CS7 It is also suitable for a first year graduate course in algorithm analysis As the speed and power of computers increases so does the need for effective programming and algorithm analysis By approaching these skills in tandem Mark Allen Weiss teaches readers to develop well constructed maximally efficient programs in Java Weiss clearly explains topics from binary heaps to sorting to NP completeness and dedicates a full chapter to amortized analysis and advanced data structures and their implementation Figures and examples illustrating successive stages of algorithms contribute to Weiss careful rigorous and in depth analysis of each type of algorithm A logical organization of topics and full access to source code complement the text s coverage