Lecture Style
Some instructors like to use "slides" projected from a laptop or from an overhead projector as part of their lectures, while others use different approaches: audience interaction, chalkboard writing, solely verbal presentation, or whatever.
While this course will use a variety of these approaches, lecture slides are provided. They have been developed over the years by CSC148 instructors (Diane Horton, Gary Baumgartner, Jim Clarke, and Paul Gries) and cover the course-standard topics. However: this does not mean that all class material is contained within the slides and other materials! They are to provide an overview of some of the bigger issues covered in the course, and hopefully to prevent frantic note-writing of complicated diagrams, examples or definitions.
Lecture Materials
Slides will be added here as .pdf files, roughly prior to each lecture. Bringing them to class is recommended, since they may be referred to, and some in-class material will already be on them.
Week | Lecture Notes | Lecture Files |
---|---|---|
1 (May 17) | Introduction, Stacks | JCList.java, ArrayJCList.java, week1.txt |
2 (May 24) | Queues | Hour1.txt, Stack.java, ArrayStack.java, Queue.java, ArrayQueue.java, CircularQueue.java |
3 (May 31) | Recursion, Memory Model | Hour1.txt, Recursive factorial and Fibonacci, Recursive reverse |
4 (June 7) | Time Analysis | Hour1.txt, Efficient Fib |
5 (June 14) | Linked Lists | info, LinkedList.java |
6 (June 21) | Test 1, Interfaces/Abstract Classes | info |
7 (June 28) | Exceptions | info, An example of abstract class and exceptions: Animal.java, AE.java |
8 (July 5) | Trees | Week8.java, BSTNode.java |
9 (July 12) | BST Trees and Generics | BSTNode.java, BST.java, LinkedBST.java |
10 (July 19) | Test 2 | Week10.txt |
11 (July 26) | Merge Sort | |
12 (August 2) | MergeSort Week12.java | |
13 (August 9) | Review |