part one Algorithms and Building Blocks chapter 1 algorithm analysis chapter 2 the collections api chapter 3 recursion chapter 4 sorting algorithms chapter 5 randomization part two Applications chapter 6 fun and games chapter 7 stacks and compilers chapter 8 utilities chapter 9 simulation chapter 10 graphs and paths part three Implementations chapter 11 inner classes and implementation of ArrayList chapter 12 stacks and queues chapter 13 linked lists chapter 14 trees chapter 15 binary search trees chapter 16 hash tables chapter 17 a priority queue: the binary heap part four Advanced Data Srtuctures chapter 18 splay trees chapter 19 merging priority queues chapter 20 the disjoint set class appendix A operators appendix B bitwise operators