Data Structures and Algorithms

Schedule

Course Meetings

What Which When Where Who
Lecture Section 1 9:55am to 11:10am on Tuesdays and Thursdays SCI 199 Lila Fontes
  Section 2 11:20am to 12:35pm on Tuesdays and Thursdays SCI 199 Zachary Palmer
Lab Section A 1:05pm to 2:35pm on Thursdays SCI 240 Lila Fontes
  Section B 1:05pm to 2:35pm on Thursdays SCI 256 Charlie Kazer
  Section C 2:45pm to 4:15pm on Thursdays SCI 240 Zachary Palmer
  Section D 2:45pm to 4:15pm on Thursdays SCI 256 Charlie Kazer

Calendar

The following is a tentative course calendar; it is subject to change as circumstances dictate.

The readings in the table below refer to the texts on the Resources page. The reading listed for each day covers the same material as that week’s lecture. You should read the material beforehand so that you are prepared to participate and follow along.

Captured videos of lecture are linked in the calendar below. The corresponding resources created during those lectures can be found in the Lecture Materials.

WEEK DAY ANNOUNCEMENTS TOPIC & READING LABS      TESTS
1

Aug 30

Lila's Notes
Zach's Notes
Zach's Lecture

Introduction to C++, Data Structures, & Algorithms

  • Goldwasser and Letscher: Ch 1-6
  • Schaffer: Ch 1

Lab 1: Gitting Started in C++

 

Sep 01

Lila's Notes
Zach's Notes
Zach's Lecture

Syllabus Quiz

2

Sep 06

Lila's Notes
Zach's Notes
Zach's Lecture

Arrays, Objects, and Memory

  • Goldwasser and Letscher: Ch 7, 8, 12
 

Sep 08

Lila's Notes
Zach's Notes
Zach's Lecture

Drop/add ends (Sep 09)

Lab 2: PicFilter

 
3

Sep 13

Lila's Notes
Zach's Notes

Sorting and Big-O Notation

  • Schaffer: Ch 3, Ch 7 Secs 1,2,4,5
 

Sep 15

Lila's Notes
Zach's Notes

Lab 3: Shapes

 
4

Sep 20

Lila's Notes
Zach's Notes
Zach's Lecture

 

Sep 22

Lila's Notes
Zach's Notes
Zach's Lecture

Lists

  • Schaffer: Ch 4 Sec 1

Lab 4: QuickSort and Big-O

Test 1 (Study Guide)

5

Sep 27

Lila's Notes
Zach's Notes
Zach's Lecture

 

Sep 29

Lila's Notes
Zach's Notes
Zach's Lecture

Stacks and Queues

  • Schaffer: Ch 4 Secs 2-3

Lab 5: ASCIImation

 
6

Oct 04

Lila's Notes
Zach's Notes
Zach's Lecture

 

Oct 06

Lila's Notes
Zach's Notes
Zach's Lecture

Induction and Recursive Invariants

  • Schaffer: Ch 3

Lab 6: Labyrinth

 
 

Oct 11

Fall Break

 

Oct 13

 
7

Oct 18

Lila's Notes
Zach's Notes
Zach's Lecture

Binary Trees

  • Schaffer: Ch 5 Secs 1-4
 

Oct 20

Lila's Notes
Zach's Notes
Zach's Lecture

 
8

Oct 25

Lila's Notes
Zach's Notes
Zach's Lecture

Balanced Binary Trees

  • Schaffer: Ch 13 Sec 2
 

Oct 27

Lila's Notes
Zach's Notes
Zach's Lecture

Lab 7: Binary Search Trees

Test 2 (Study Guide)

9

Nov 01

Lila's Notes
Zach's Notes
Zach's Lecture

Priority Queues

  • Schaffer: Ch 5 Sec 5, Ch 7 Sec 6
 

Nov 03

Lila's Notes
Zach's Notes
Zach's Lecture

CR/NC/W Deadline (Nov 04)

 
10

Nov 08

Lila's Notes
Zach's Notes
Zach's Lecture

Hash Tables

  • Schaffer: Ch 9 Sec 4
 

Nov 10

Lila's Notes
Zach's Notes
Zach's Lecture

Lab 8: Efficient Keyword Search

 
11

Nov 15

Lila's Notes
Zach's Notes
Zach's Lecture

Graphs and Graph Algorithms

  • Schaffer: Ch 11
 

Nov 17

Lila's Notes
Zach's Notes
Zach's Lecture

 
12

Nov 22

Lila's Notes
Zach's Notes
Lecture (Lila's Section)
Lecture (Zach's Section)

Object-Oriented Design

Lab 9: Inroads

 

Nov 24

Thanksgiving Break

 
13

Nov 29

Lila's Notes
Zach's Notes
Zach's Lecture

Graphs and Graph Algorithms

  • Schaffer: Ch 11
 

Dec 01

Lila's Notes
Zach's Notes
Zach's Lecture

Test 3 (Study Guide)

14

Dec 06

On Thursday schedule:
lab in afternoon

Lila's Notes
Zach's Notes
Lecture (Lila's Section)
Lecture (Zach's Section)

Reference Types and Iterators

 

Dec 11

Final Exam (2pm-5pm in SCI 101) (Study Guide)