Chapter 1 Introduction to Java Programming 1 Chapter 2 Primitive Data and Definite Loops 63 Chapter 3 Introduction to Parameters and Objects 136 Supplement 3G Graphics (Optional) 194 Chapter 4 Conditional Execution 234 Chapter 5 Program Logic and Indefinite Loops 311 Chapter 6 File Processing 383 Chapter 7 Arrays 439 Chapter 8 Classes 516 Chapter 9 Inheritance and Interfaces 573 Chapter 10 ArrayLists 648 Chapter 11 Java Collections Framework 701 Chapter 12 Recursion 740 Chapter 13 Searching and Sorting 818 Chapter 14 Stacks and Queues 870 Chapter 15 Implementing a Collection Class 908 Chapter 16 Linked Lists 951 Chapter 17 Binary Trees 1003 Chapter 18 Advanced Data Structures 1057 Appendix A Java Summary 1093 Appendix B The Java API Specification and Javadoc Comments 1108 Appendix C Additional Java Syntax 1114
Stuart Reges is a principal lecturer at the University of Washington where he teaches computer programming, programming languages, and discrete structures. He is co-author of an introductory Java programming textbook with Marty Stepp titled Building Java Programs: A Back to Basics Approach. UW CSE's Stuart Reges has won the 2011 University of Washington Distinguished Teaching Award, which is given to faculty who show a mastery of their subject matter, intellectual rigor and a passion for teaching. Marty Stepp is a computer science lecturer at the University of Washington where he teaches intro programming, web programming, and software engineering. Google highlighted his web programming resources in their Google Code for Educators initiative, and he was featured as the Seattle PI's Geek of the Week. Stepp is the lead author of Web Programming Step by Step, with Jessica Miller and Victoria Kirst from the University of Washington. He is also co-author of Building Java Programs: A Back to Basics Approach with Stuart Reges. Stepp wrote an online tool for practicing Java problems to accompany the Java textbook, called Practice-It!. He is also first author of Computing Fundamentals with C#. From 2004-2006, Stepp worked as a computer science lecturer at the University of Washington, Tacoma. Before that he spent a year as a developer at Microsoft on the Excel team. Stepp got a Master's degree in computer science at the University of Arizona in 2003. He has done research in geometric algorithms and security, taught several courses as a graduate student, and was a teaching assistant for several years.