CMSC 162: Introduction to Algorithmic Design II
(Fall 2017)

MWF 12-12:50pm Ruffner G54
Thur  9:30-10:45am   Ruffner G56

Course Information Handout/Syllabus

Academic Honesty Handout
text cover Tutoring:
TuTh
Grainger G01
5-6pm
Instructor:
Scott McElfresh
x2249       Ruffner 346
ProfScottMcElfresh @ gmail.com
Website

Office Hours:
(no appointment needed,
just drop by during these times)


yellow divider
Calendar

yellow divider
Mon, Aug 21

Topics:
  • Introduction
  • Begin review of C++ basics

Assigned:
  • Review the topics of:  cin, cout, if, while, for, functions, parameters
  • Read Chapter 1 of the text.
Tue, Aug 22

Wed, Aug 23

Topics:
  • review of basic C++ items
  • switch statements
Thu, Aug 24

Lab exercise


Assigned:
Review hw to be linked soon
Fri, Aug 25

Topics:
  • function prototypes
  • .h and .cpp files
  • intro to separate compilation
  • do-while loops
yellow divider
Mon, Aug 28

Topics:
  • review of returns and parameters
  • references
Tue, Aug 29

Wed, Aug 30

Topics:
Thu, Aug 31

Lab exercise
Fri, Sept 1

Topics:
  • Review of .cpp/.h files
  • Review of structs
  • Intro to classes
Photo:
yellow divider
Mon, Sept 4

Labor Day
No classes

Tue, Sept 5

Wed, Sept 6

Topics:
  • Class definition
  • Method definition
Code: Photo:
Thu, Sept 7

Lab exercise
Fri, Sept 8

Lab day
yellow divider
Mon, Sept 11

Topics:
  • classes 
  • vector review
Tue, Sept 12

Wed, Sept 13

Topics:
  • vectors and objects
Thu, Sept 14

Lab exercise on Vectors and Classes
Fri, Sept 15

Topics:
  • Searching (linear)
  • Sorting
    • Bubble(ish)
    • Selection
Photo:
yellow divider
Mon, Sept 18

Topics:
  • intro to recursion
Tue, Sept 19

Wed, Sept 20

Topics:
  • Recursive strategies
  • Searching
Photos:
Thu, Sept 21

Lab exercise
Fri, Sept 22

Topics:
  • Growth rates (linear, logarithmic)
  • Binary search
Photo:
yellow divider
Mon, Sept 25

Topics:
  • Growth rates
  • Big-O
  • Merge sort
Photos:
Tue, Sept 26

Wed, Sept 27

Bring laptops

Lab exercise

Topics:
  • Finishing merge sort
Photo:
Thu, Sept 28

Lab exercise (Wednesday's exercise continued)
Fri, Sept 29

Inclass Exam
yellow divider
Mon, Oct 2

Topics:
  • more work with Big Oh
Assigned:
  • Consider the rest of the Big Oh exercise for Wednesday.  Be prepared to discuss all questions.
Tue, Oct 3

Wed, Oct 4

Topics:
  • Big Oh
Thu, Oct 5

Topics:
introduction to Stacks


Fri, Oct 6

Topics:
  • working with Stacks and queues
Assigned:
  • Optional assignment that includes extra points possible on the first InClass exam.   Due:  Friday, October 20  THIS DUE DATE CHANGED FROM IN-CLASS ANNOUNCEMENT.
yellow divider
Mon, Oct 9

BRING LAPTOPS

inclass stacks exercise

Tue, Oct 10

Wed, Oct 11

Bring laptops

inclass work with stacks and queues


Thu, Oct 12

inclass work with stacks and queues
Fri, Oct 13

QUIZ

Topics:
yellow divider
Mon, Oct 16 - Tue, Oct 17

Fall Break
No Classes
Wed, Oct 18

CLASS CANCELLED
Thu, Oct 19

Parallel Vectors
Fri, Oct 20
DUE: optional assignment assigned on Oct 6

Parallel Vectors Lab exercise
yellow divider
Mon, Oct 23

Topics:
  • More with Parallel arrays
  • Intro to Linked Lists
Assigned:
  • Read sections 3.3 and 3.4 of the text.
Tue, Oct 24

Wed, Oct 25

Topics:
  • Pointer details
Thu, Oct 26

Lab exercise on exploring pointers
Fri, Oct 27

Topics:
  • intro to linked lists
yellow divider
Mon, Oct 30

Topics:
Tue, Oct 31

Wed, Nov 1

Topics:
  • coding linked lists
Thu, Nov 2

Lab exercises:
Fri, Nov 3

Topics:
  • Algorithms and analysis with Linked Lists
  • Recursion on linked lists
yellow divider
Mon, Nov 6

Topics:
  • Analysis and recursion
Tue, Nov 7

Wed, Nov 8

Inclass Exam
Thu, Nov 9
DUE 9:30am
  • Linked List of Cheeses
  • Linked List of Strings Manipulation

Assigned:
Fri, Nov 10

Topics:
  • Binary Search Trees
yellow divider
Mon, Nov 13

Topics:
  • working with BSTs
  • traversals, etc
Tue, Nov 14

Wed, Nov 15

Topics:
  • BST coding
Thu, Nov 16
Due:  9:30am    Recursion on Linked lists (Mountains)

Assigned:
BSTs (Kitchen inventory)
Fri, Nov 17

Topics:
yellow divider
Mon, Nov 20

Topics:
Tue, Nov 21

Wed, Nov 22  -  Fri, Nov 24

Thanksgiving Break
No Classes

yellow divider
Mon, Nov 27

Topics:
Tue, Nov 28

Wed, Nov 29

Topics:
Thu, Nov 30
DUE:  Kitchen BSTs

Lab exercise
Fri, Dec 1

Topics:
yellow divider
Mon, Dec 4

11:30am - 2pm
Final Exam

Details TBA

Tue, Dec 5

Wed, Dec 6


Thu, Dec 7

Fri, Dec 8


yellow divider