SUNY Geneseo Department of Computer Science
Lecture Record
CSci 240, Spring 2007
Prof. Doug Baldwin
Caveat
These are electronic records of class discussion from CSci 240 (Foundations of Algorithms).
They are generally captured as a class unfolds,
and slightly cleaned up afterwards. They are not clean, carefully-planned lecture
notes in the usual sense. They are more an electronic equivalent of notes on
the blackboard: they record some of what the instructor said, some of what students
said, the things that really happened in the class—including the misunderstandings,
false starts, and similar things that happen in real classes. The goal of these
notes is as much to help students remember how they learned as it is to help
them remember what they learned (because the "how" of learning is at least as
important as the "what").
Please make WWW or other electronic links to this page only—I want people
reading these notes to see the “caveat” above.
Send comments, questions, etc. related to these notes to Doug
Baldwin.
- Jan. 17 -- Introduction
- Jan. 19 -- Pre- and Postconditions
- Jan. 22 -- Introduction to Proof
- Jan. 24 -- Overview of Experimentation
- Jan. 26 -- Logic
- Jan. 29 -- Recursion Review
- Jan. 31 -- Introduction to Induction
- Feb. 2 -- Induction and Algorithms, Part 1
- Feb. 5 -- Induction and Algorithms, Part 2
- Feb. 7 -- Introduction to Recurrence Relations
- Feb. 9 -- Recurrence Relations and Recursive Algorithms
- Feb. 12 -- Introduction to Asymptotic Notation
- Feb. 16 -- Asymptotic Notation, Part 2
- Feb. 19 -- Introduction to the Master Theorem
- Feb. 21 -- The Master Theorem, Part 2
- Feb. 23 -- Exam 1, no notes
- Feb. 26 -- Loop Invariants
- Feb. 28 -- Correctness of Loops
- Mar. 2 -- Correctness of Insertion Sort
- Mar. 5 -- Proving Loop Invariants and Loop Performance
- Mar. 7 -- Guest Lecture, no notes
- Mar. 9 -- Guest Lecture, no notes
- Mar. 19 -- Performance of Insertion Sort
- Mar. 21 -- Quicksort
- Mar. 23 -- Performance of Quicksort
- Mar. 26 -- Mergesort
- Mar. 28 -- Performance of Mergesort
- Mar. 30 -- Motivation for Trees
- Apr. 2 -- Exam 2, no notes
- Apr. 4 -- Tree Definitions
- Apr. 6 -- Tree Search and Insertion
- Apr. 9 -- Performance of Ordered Binary Tree Search/Insert
- Apr. 11 -- Ordered Binary Tree Deletion, Part 1
- Apr. 13 -- Ordered Binary Tree Deletion, Part 2
- Apr. 16 -- Tree Deletion and Traversal
- Apr. 18 -- Tree Traversals, Part 2
- Apr. 20 -- Introduction to Heaps
- Apr. 23 -- Trees in Arrays
- Apr. 25 -- Heap Insertion
- Apr. 27 -- Sifting Down in Heaps
- Apr. 30 -- Some Uses of Priority Queues