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
Thu, Aug 26

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

Lab 1 is assigned (due Sep 6). Submit to Moodle.

Tue, Aug 31

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

Thu Sep 2

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

Tue Sep 7

Chp 2: Inheritance and Templates. Run Time Analysis.

Lab2 (due Sep 13). Submit to Moodle.

Thu Sep 9

Practice with Big-O notation.

Tue Sep 14

Chp 3: Pointers. Handout on pointers.

Lab 3 (due Sep 20). Submit to Moodle.

Thu Sep 16 Chp 3: Array based lists, Virtual functions and abstract classes
Tue Sep 21

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

Lab 4 (due Sep 27). Submit to Moodle.

Thu Sep 23

Chp 4 and 13: Iterators, Algorithms, and practice

Tue Sep 28

Chp 5: Intro to Linked Lists

Lab 5 (due Oct 11). Submit to Moodle.

Thu Sep 30 Linked Lists continued.
Tue Oct 5

LL finished and LL variations (douby linked lists, circular linked lists etc.). Intro to Recursion.

Thu Oct 7

OCTOBER BREAK

Tue Oct 12

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

Lab 6 (due Oct 20). Submit to Moodle.

Thu Oct 14

Recursion continued (recursion and backtracking)

Tue Oct 19 Midterm Exam
Thu Oct 21

Chp 7 Stacks

Lab 7 (due Nov 1). Submit to Moodle

Tue Oct 26

Chp 7 finished

Thu Oct 28

Chp 8: Queues

Lab 8 (due Nov 8). Submit to Moodle.

Tue Nov 2

Chp 8 finished. (+ Intro to Linux)

Thu Nov 4

Chp 9: Searhing and Hashing Algorithms

Lab 9 (due Nov 15). Submit to Moodle.

Tue Nov 9

Chp 9 Finished

Thu Nov 11

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

Lab 10 (due Dec 1). Submit to Moodle.

Tue Nov 16

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 18

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

THANKSGIVING BREAK
Tue Nov 30

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

Tue Dec 2

Ch 11: Heap Sort

Thu Dec 7

Ch 12: Graphs

Tue Dec 9

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

The Final Exam date: Thu, Dec 16, 6:30 pm.