Week

Day

Date

Topic

Due Dates

Written

Assignments

1

Mon

13-Jan

L1: Overview ,Code

 

 

Tue

14-Jan

Lab 1: Setup

 

Wed

15-Jan

L2: Contracts, Code, Slides

 

 

Thu

16-Jan

Rec 1: C0 Basics

 

2

Sun

19-Jan

Linux Workshop

 

Mon

20-Jan

L3: Ints Code, Slides

Written 1

 

Tue

21-Jan

Rec 2: A Bit about Bytes

 

 

Wed

22-Jan

L4: Arrays Slides , Code

 

 

Thu

23-Jan

Lab 3: Loopty-loopty Loop Handout

 

1 - Scavenger hunt

3

Mon

27-Jan

L5: Searching arrays, Slides, Code

Written 2

 

Tue

28-Jan

Rec 3: Function Family Reunion

 

 

Wed

29-Jan

L6: Sorting Arrays, Slides, Code

 

 

Thu

30-Jan

Lab 4: TA Training Handout

 

2 - Pixels

4

Mon

03-Feb

L7: Binary Search , Slides, Code

Written 3

 

Tue

04-Feb

Lab 5: Fibonacci has Bad Internet Handout

 

 

Wed

05-Feb

L8: Quicksort , Slides, Code

 

 

Thu

06-Feb

Rec 4: A Strange Sort of Proofs

 

3 - Images (rotate-mask)

5

Mon

10-Feb

L9: Data structure invariants , Slides (Libraries), Slides (Pointers), Code

Written 4

 

Tue

11-Feb

SPORTS DAY

 

 

Wed

12-Feb

L10: Stacks and Queues , Slides, Code

 

 

Thu

13-Feb

Rec 5: A queue_t Interface

 

4 - Dos Lingos

6

Mon

17-Feb

L11: Linked Lists , Slides, Code

Written 5

 

Tue

18-Feb

Lab 6: Misclaculation

 

 

Wed

19-Feb

Rec 6: Link it all Together

 

 

Thu

20-Feb

MIDTERM 1

 

 

7

Mon

24-Feb

L12: Unbounded Arrays , Slides, Code

 

Tue

25-Feb

Lab 7: List(en) Up!

 

5 - EXP

Wed

26-Feb

L13: Hash Tables , Slides part1 Code 1

 

 

Thu

27-Feb

Rec 7: Array Disarray

Written 6

Sun

01-Mar

Spring Break

Mon

02-Mar

Tue

03-Mar

Wed

04-Mar

Thu

05-Mar

 

 

 

 

8

Mon

09-Mar

L13: Hash Dictionaries , Slides, Code 2

Tue

10-Mar

Lab 8: Hash This! , Handout

 

6 - Text Buffer

Wed

11-Mar

L14: Generic Data Structures , Code

 

 

Thu

12-Mar

Lab 9: Legacy of the void * ,Handout

Written 7

9

Sun

15-Mar

 

Mon

16-Mar

L15: Binary Search Trees , Code

 

Tue

17-Mar

Lab 9: Legacy of the void * ,Handout

 

Wed

18-Mar

L16: AVL Trees , Code

 

 

Thu

19-Mar

Rec 9: Rotating Rotations

7 - Bloom Filters

10

Sun

22-Mar

 

Mon

23-Mar

L17: Priority Queues , Code

Written 8

Tue

24-Mar

Lab 10: This One's a Treet , Handout

 

 

Wed

25-Mar

L18: Restoring Invariants , Code

 

 

Thu

26-Mar

Rec 10: Heaps of fun

8 - Ropes

11

Mon

30-Mar

L19: Data structures in C , Code

 

Tue

31-Mar

Lab 11: Mind your P's and Q's , Handout

Written 9

Wed

01-Apr

L20: C's memory model , Code

 

 

Thu

02-Apr

Rec 11: From C1 to Shining C

 

 

12

Mon

06-Apr

L21: Types in C , Code

9 - Generic Queues

Tue

07-Apr

Lab 12: Once you C! you C them all

 

 

Wed

8-Apr

L22: Virtual Machines , Code

 

 

Thu

09-Apr

L22: (continued)

Written 10

13

Mon

13-Apr

L23: Graph representation , Code

Tue

14-Apr

Lab 13: All Sorts of Sorts , Handout

 

11 - C0VM (part I) Checkpoint

Wed

15-Apr

L24: Graph Search , Code

 

 

Thu

16-Apr

Rec 12: C-ing is Believing

Written 11

14

Mon

20-Apr

L25: Spanning Trees

Tue

21-Apr

Lab 14: Spend Some Cycles Thinking , Handout

 

 

Wed

22-Apr

L26: Union-Find ,Code

 

11 - C0VM

Thu

23-Apr

< Rec 14: Graphs & Rec 15: Union-Find(ing your roots)

Written 12