Read Chapter 7, section 1 of Introduction to Programming Using Java, Seventh Edition
9.1 Recursion
9.2 Linked Data Structures
9.3 Stacks, Queues, and ADTs
9.4 Binary Trees
9.5 A Simple Recursive Descent Parser