Outside-In approach enables students to easily apply in practical software development what they learn in class. The book combines the use of abstract data types, their representation in Java, and fundamental analytical methods in a cohesive manner to enable students to learn better. Analysis helps students put a price tag on the data structure they choose to use.