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 13

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

Lab 1 is assigned

Thu, Jan 15

Ch 1: Big-O Notation & Classes

Check out this seminal paper: PRIMES are in P. Also see these papers A breakthrough, The Status of P vs NP

Tue Jan 20

Ch 2: Inheritance & Composition

Lab2

Thu Jan 22 Ch 2: Operator Overloading and Templates
Tue Jan 27

Chp 3: Pointers

Lab 3

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

Ch 4: Introduction to STL, vector and deque

Lab 4

Thu Feb 5 Chp 4: Iterators, Algorithms, and practice
Tue Feb 10

Chp 5: Intro to Linked Lists

Lab 5

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

Chp 6: Recursion

Lab 6

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

Ch 7: Stacks

Lab 7 TBA

Thu March 19 Chp 7 finished
Tue March 24

Ch 8: Queues

Lab 8 TBA

Thu March 26 Ch 8 finished. Intro to Linux
Tue March 31

Ch 9: Searching and Hashing algorithms

Lab 9 TBA

Thu Apr 2 Ch 9 finished
Tue Apr 7

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

Lab 10 TBA

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

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

Lab 11 TBA

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

AVL balancing, (Heap Sort)

Lab 12 TBA

Thu Apr 23

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

 

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

Chp 12: Graph Algorithms

Reminder: The Final Exam will be on Monday May 4, 6:30 pm in the usual classroom.