The schedule is subject to change by the management at any time.

Week Monday Wednesday Friday
1

April 5th

2: C++ Functions

Read: Chapter 2-3, and Chapter 10, Section 2

Slides

April 7th

3: Big O, Vectors, Grids

Read: Chapter 5.1 - 5.2

Slides

Honor Code

2

April 10th

4: Strings and Stanford Library Functions

Read: Chapters 3-4

Slides

In (Thursday): Assignment 1
Out (Thursday): Assignment 2

April 12th

5: Stacks and Queues

Read: Chapter 5.2 - 5.3

Slides

April 14th

6: Sets and Maps

Read: Chapter 5.4 - 5.6

Slides

3

April 17th

7: Introduction to Recursion

Read: Chapter 7

Slides

In (Thursday): Assignment 2
Out (Thursday): Assignment 3: Recursion

April 19th

8: Fractals

Read: Chapter 7.5, 8.4

Slides

April 21st

9: Recursive Backtracking 1

Read: Chapter 8.2 - 8.3; 9

Slides

4

April 24th

10: Recursive Backtracking 2 and Exhaustive Search

Read: Chapter 9

Slides


In (Thursday): Assignment 3
Out (Thursday: Assignment 4: Boggle!

April 26th

11: Sorting

Read: Section 7.5, 10.1, 10.2

Slides

April 28th

12: Memoization and Structs

Read: Chapter 10

Slides

5

May 1st

13: Classes

Read: Chapter 6

Slides

Midterm Thursday May 4th

May 3rd

14: Pointers

Read: Chapter 12

Slides

May 5th

15: Dynamic Allocation

Read: Chapter 11

Slides

6

May 8th

16: Linked Lists

Read: Chapter 11

Slides

In (Thursday): Assignment 4: Boggle!
Out (Thursday): Assignment 5: PQueue

May 10th

17: Implementing Vector

Read: Chapter 12.1 (advanced reading: 14.4)

Slides

May 12th

18: Binary Heaps

Slides

Read: Assn 5 handout

7

May 15th

19: Trees

Read: Chapter 16.1

Slides

In (Thursday): Assignment 5
Out (Thursday): Assignment 6: Huffman Encoding

May 17th

20: Binary Search Trees

Slides

Read: Chapter 16.1-16.3

May 19th

21: Graphs

Slides

Read: Chapter 18

8

May 22nd

22: Hashing

Slides

Read: Chapter 15

In (Thursday): Assignment 6
Out: Assignment 7

May 24th

23: Graphs II: Minimum Spanning Trees

Slides

Read: Chapter 18

May 26th

24: BFS and DFS

Slides

Read: Chapter 18.6

9

May 29th

No Class - Memorial Day

May 31st

25: Dijkstra and A*

Slides

Read: Chapter 18.6

June 2nd

26: Esoteric Data Structures: Skip Lists and Bloom Filters

Slides

No reading

10
In (Tuesday): Assignment 7
27: C++ Inheritance and Polymorphism

June 5th

Slides

No reading

June 7th

28: Final Class
Final: June 9th, 8:30am

Slides

No reading

June 9th

Final Exam, 8:30am