22C Course Calendar

 Week
 Day Topic Assignment
 1Tuesday, January 9
Lesson 1:
Introductions
Abstract Data Types


Lab 0: Course Introductions
Read Chapter 1.1, 1.4-1.5, C1.1

 Thursday, January 11


Lesson 2:
Linked Lists


Read Chapter 4


 





Lab 1: Linked Lists Part 1
 2Tuesday, January 16



Lesson 3:
Linked Lists

Read Chapter 8, 9.2
 Thursday, January 18



 Lesson 4:
Linked Lists

Read Chapter C3.2
 



 
Lab 2: Linked Lists Part 2
Lab 2 Test File

 3Tuesday, January 23


 
Lesson 5:
Queues

 

Read Chapter 13.1-13.2
 Thursday, January 25


 
Lesson 6:
Stacks



Read Chapter 7.2

  



 
Lab 3: Stacks and Queues
4 Tuesday, January 30


Lesson 7:
Recursion


Due: Project Report 1
Read Chapter 2


 Thursday, February 1



Lesson 8:
Algorithm Efficiency

Midterm 1 Review Guide
Read Chapter 14.1
 





Lab 4: Recursion

 5Tuesday, February 6



Lesson 9:
Algorithm Efficiency
Trees

Read Chapter 10
 Thursday, February 8

Midterm 1





  



 
Lab 5: Queue from Two Stacks

 6Tuesday, February 13



Lesson 10:
Binary Trees, Binary Search Trees

Read Chapter 15
 Thursday, February 15



Lesson 11:
Binary Search Trees


Due: Project Report 2
Read Chapter 16
  





Lab 6: Binary Search Trees

 7Tuesday, February 20



Lesson 12:
Hash Tables



Read Chapter 18.4

 Thursday, February 22


Lesson 13:
Graphs





  





Lab 7: Hash Tables
 8Tuesday, February 27



Lesson 14:
Graphs

Read Chapter 20
Midterm 2 Review
 Thursday, March 1



Lesson 15:
Graphs

Due: Project Report 3 
Due: Peer Evaluation


  



 
Lab 8: Graphs

 9Tuesday, March 6


 
Midterm 2

 Thursday, March 8




~Holiday - No Class~

  



 

 10Tuesday, March 13


Lesson 16:
Heaps



Final Exam Review
Read Chapter 17

  Thursday, March 15



 Lesson 17:
Heaps

Due: Project Report 4

  



 


 11Tuesday, March 20



Lesson 18:
Sorting Algorithms


Read Chapter 11
 Thursday, March 22



Final Exam





 


 
 



 12Tuesday, March 27



 Final Project Demonstrations

Due: Project Report 5
Due: Second Peer Evaluation