There is no required textbook for this course. Electronic reference material will be provided here as the term progresses.
Note: The main or “required” material is also mirrored locally whenever this is permitted by the license of the respective material. Note however that such a material has its own license and so is not necessarily covered by the site license.
Class coverage: Sections 2, 3, 5, 6, 7, 8, and 15.
Class coverage: all but Sections 6.3, 7, 9, and 13.
Class coverage: Chapters 2, 3, 4, 5, 6, and Section 7.2.
Class coverage: Chapter 1 and Section 2.1. The rest of the text may be interesting to read (but is not required).
Note that this presentation uses Java, though the principles and algorithms are the same.
Note: I am assuming that OOP principles are already known and so I have not provides references for that.