Home | Learning Goals | Schedule | Administration | Readings | Lab/Lecture Notes | Assignments | Computing |
(Assignments are available from the assignments page.)
Handouts for Everyone!
Here are some possibly-helpful notes:
Date | Lab | Resources |
---|---|---|
Sep 12 - Sep 16 | Lab 1: An Introduction to Programming and Compiling in C++ |
|
Sept 19 - Sept 23 | Lab 2: Debugging an Insertion Sort program, C++ pointers, and memory leaks |
|
Sept 26 - Sept 30 | Lab 3: C++ Class and Linked Lists |
|
Oct 3 - Oct 7 | Lab 4: Heaps |
|
Oct 10 - Oct 17 | Lab 5: Binary Search Trees |
|
Oct. 24 - Oct. 28 | Lab 6: Quicksort |
|
Oct. 31 - Nov. 4 | Lab 7: Hashing | |
Nov. 7 - Nov. 11 | Labs Cancelled for Remembrance Day Holiday |
|
Nov. 14 - Nov. 18 | Lab 8: AVL Trees |
|
Nov. 21 - Nov. 25 | Lab 9: Parallelism |
|
Section 102 (Evans, TTh 8-9.30) and 101 (Manuch, TTh 14-15.30) Handouts
Date |
Topic |
Lecture Slides |
Extra material |
Readings (see the syllabus for a complete list) |
||
---|---|---|---|---|---|---|
Original | Will's annotated | Jan's annotated | ||||
Sep 8 | Introduction, Arrays, Queues, Stacks | 4up 1up | annotated | annotated | fib.cpp |
Epp:
Koffman: P) A C++ Primer, 1) Introduction to Software Design, 4.5-4.7) Linked Lists, 5) Stacks, 6) Queues |
Sep 17 | Asymptotic Algorithm Analysis | 4up 1up | annotated | annotated | none |
Epp: 11.1-3) Asymptotic Notation
Koffman: 2.6) Efficiency of Algorithms |
Oct 4 | Priority Queues | 4up 1up | annotated | annotated | skiplist |
Epp:
10.6) Rooted Trees
Koffman: 8.1) Trees, 8.5) Heaps and Priority Queues |
Oct 6 | Recursion, Induction, and Loop Invariants | 4up 1up | annotated | annotated | none |
Epp: 5.2-5) Mathematical Induction and Loop
Invariants
Koffman: 2.5) Loop Invariants, 7) Recursion |
Oct 18 | Sorting | 4up 1up | annotated | annotated | Best Case Heapsort |
Epp: 11.3-5) Application: Analysis of Algorithm
Efficiency I & II
Koffman: 10) Sorting |
Oct 25 | Hashing and Pigeonhole Principle | 4up 1up | annotated | annotated | none |
Epp: pg.401) Hash Functions,
9.4) Pigeonhole Principle
Koffman: 9) Sets and Maps |
Nov 5 | AVL Trees | 4up 1up | annotated | annotated | Avg Cost to Create BST |
Epp: 10.6) Rooted Trees
Koffman: 8.1-4) Binary Search Trees, 11.1) Tree Balance and Rotation, 11.2) AVL Trees |
Nov 8 | B+-Trees | 4up 1up | annotated | annotated | BST Remove annotatedWill annotatedJan |
Epp:
Koffman: 11.4-5) 2-3, 2-3-4, and B-Trees |
Nov 15 | Parallelism | 4up 1up | annotated | annotated | Parallelism and Concurrency Notes |
Epp:
Koffman: |
Nov 24 | Graphs | 4up 1up | annotated | annotated | Kruskal "proofs" |
Epp: 10) Graphs and Trees
Koffman: 12) Graphs |
Dec 12 | Review | 1up |