Course Calendar for Scmp 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, Sep 1

Introduction, Logistics, A quick review, Chp 1: Software Engineering Principles

Lab 1 is assigned (due Sep 9)

Thu, Sep 3

Chp 1: Run Time Analysis, and Big-O notation

Tue Sep 8

Big-O Notation & Computational Complexity. Chp 2: Operator Overloading.

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

Thu Sep 10

Chp 2: Inheritance and Templates. Run Time Analysis.

Lab2 (due Sep 16)

Tue Sep 15

Practice with Big-O notation.

Thu Sep 17

Chp 3: Pointers. Handout on pointers.

Lab 3 (due Sep 23)

Tue Sep 22 Chp 3: Array based lists, Virtual functions and abstract classes
Thu Sep 24

Ch 4 and 13: Introduction to STL, vector, deque, set, maps, iterators

Lab 4 (due Sep 30)

Tue Sep 29

Chp 4 and 13: Iterators, Algorithms, and practice

Thu Oct 1

Chp 5: Intro to Linked Lists

Lab 5 (due Oct 12)

Tue Oct 6 Linked Lists continued.
Thu Oct 8

Linked Lists finished (douby linked lists, circular linked lists etc.). Intro Linux?

Tue Oct 13

Chp 6: Recursion. Some video lessons on recursion from Scmp 118. Part1, Part2

Lab 6 (due Oct 21)

Thu Oct 15

Recursion continued (recursion and backtracking)

Tue Oct 20 Midterm Exam
Thu Oct 22

Chp 7 Stacks

Lab 7 (due Nov 2)

Tue Oct 27

Chp 7 finished

Thu Oct 29

Chp 8: Queues

Lab 8 (due Nov 9)

Tue Nov 3

Chp 8 finished. (+ Intro to Linux)

Thu Nov 5

Chp 9: Searhing and Hashing Algorithms

Lab 9 (due Nov 16)

Tue Nov 10

Chp 9 Finished

Thu Nov 12

Ch 10: Sorting algorithms: Selection Sort, Insertion Sort, Bubble Sort, and Merge Sort

Lab 10 (due Nov 23)

Tue Nov 17

Ch 10: Shell Sort and Quick Sort. Animations of various sorting algorithms as falk dances. MergeSort vs QuickSort. ShellSort. A slow sorting algorithm.

Thu Nov 19

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

Tue Nov 24

 Ch11: Functions as Parameters, AVL Trees, Balancing AVL Trees

Thu Nov 26

THANKSGIVING BREAK

Tue Dec 1

Ch 11: Heap Sort

Thu Dec 3

Ch 12: Graphs

Tue Dec 8

Chp 12: Graph Algorithms. You may find the animations on this site useful.

The Final Exam date: Fri, Dec 18, 1:30 pm.