Course Calendar for Math 218

It is expected that you read all the sections to be covered BEFORE the class and come to class prepared to discuss the topics.
Check this page regularly for updates . This is a tentative schedule to be updated as needed.

Date Section/Topic/Reading Assignment
Tue, Jan 15

Ch 1: Software Engineering Principles & Run Time Analysis, Big-O notation

Lab 1 is assigned

Thu, Jan 17

Ch 1: Big-O Notation & Classes

Check out this seminal paper: PRIMES are in P. Also see this paper The Status of P vs NP

Tue Jan 22

Ch 2: Inheritance & Composition

Lab2

Thu Jan 24 Ch 2: Operator Overloading and Templates
Tue Jan 29

Chp 3: Pointers

Lab 3

Thu Jan 31 Chp 3: Array based lists, Virtual functions and abstract classes
Tue Feb 5

Ch 4: STL vector and deque

Lab 4

Thu Feb 7 Chp 4: Iterators and practice
Tue Feb 12

Chp 5: Intro to Linked Lists

Lab 5

Thu Feb 14 Linked Lists continued
Tue Feb 19 Linked Lists finished (douby linked lists, circular linked lists etc.)
Thu Feb 21

Chp 6: Recursion (midterm exam Thu Feb 28)

Lab 6

Tue Feb 26 Recursion continued (recursion and backtracking)
Thu Feb 28 Midterm Exam
SPRING BREAK
Tue March 19

Ch 7: Stacks

Lab 7 is assigned

Thu March 21 Chp 7 finished
Tue March 26

Ch 8: Queues

Lab 8 assigned

Thu March 28 Ch 8 finished. Intro to Linux
Tue Apr 2

Ch 9: Searching and Hashing algorithms

Lab 9 assigned

Thu Apr 4 Ch 9 finished
Tue Apr 9 (adjusted class schedule, honors day: 9:20-10:20)

Ch 10: Sorting algorithms: Bubbles sort, selection sort, insertion sort, shell sort

Lab 10 is assigned

Thu Apr 11 Ch 10: Merge Sort and Quick Sort. Animations of various sorting algorithms as falk dances.
Tue Apr 16

Ch 11: Binary Trees, Tree Traversals, Binary Search Trees (intro)

Lab 11 assigned

Thu Apr 18 Ch 11: BST, Functions as Parameters, AVL Trees (intro)
Tue Apr 23

AVL balancing, (Heap Sort)

Lab 12 assigned

Thu Apr 25

Heap Sort, Applications of Trees (prioirty queues, expression trees, Huffman encoding etc)

Bonus Lab posted

Tue Apr 30 Chp 12: Graphs (Definitions, representations, BFS, DFS)
Thu May 2

Chp 12: Graph Algorithms

Reminder: The Final Exam will be on Thursday May 9, 8:30 am in the usual classroom.