CS112 Spring 2004 Schedule



Lecture notes and lab assignment handouts may not be posted for all the classes. A handout available before the actual lecture or lab meeting is only tentative and may be changed at any time by the professor. Handouts are not meant as a substitute for class attendence, but as guidelines for the topics covered in class.
All homeworks are handed in on Thursday and are due the following Wednesday by midnight, SHARP, with a few possible exceptions (due on Tuesday) which will be announced.
Class #

Date
Lectures
Labs
Topic
Assignment
1

Tu 1/27
Lecture 1
Lab 1
Introduction

2

Th 1/29
Lecture 2
Lab 2
Review of Arrays and Functions in C and C++
Basic Software Engineering principles
hw1
3

Tu 2/3
Lecture 3

Lab: the Game of Life, part I

4

Th 2/5
Lecture 4
Lab
Lab: the Game of Life, part II
hw2
5

Tu 2/10
Lecture 5

Selection Sort, done and debugged in class

6

Th 2/12
Lecture 6

Structures and Templates.
hw3
7

Tu 2/17
Lecture 7

Developing a program by stepwise refinement. Selection Sort again, using templates and functions as parameters.

8

Th 2/19
Lecture 8

Developing a program by stepwise refinement. Insertion Sort again, using templates and functions as parameters.
hw4
9

Tu 2/24
Lecture 9

Introduction to Object-oriented Programming. Classes.

10

Th 2/26
Lecture 10

Stacks.
Class templates
hw5
11

Tu 3/2
Lecture 11

Applications of Stacks: Evaluation of Arithmetic Expressions.

12

Th 3/4
Lecture 12

Applications of stacks: allocation of memory for local variables and function parameters.
hw6
13

Tu 3/9
Lecture 13

Allocation of memory using stacks
Midterm Review
Old exam Even older exam

M

Th 3/11
Midterm

Midterm

14

Tu 3/23
Lecture 14

Recursion and Recursive Function Calls (another application of stacks)
For hwk: Queues

15

Th 3/25
Lecture 15
Lab
Recursion and Recursive Function Calls, cont'd
For hwk: Queues
hw7
16

Tu 3/30
Lecture 16

QT applications for visualization. Introduction to Lists, Part I.

17

Th 4/1
Lecture 17

Lists, Part II. Theory and implementation. Pointers, pointers, pointers...
hw8
18

Tu 4/6
Lecture 18

More on pointers, struct's, class objects
Allocation and deallocation of memory for lists
Destructors

19

Th 4/8
Lecture 19

More on Dynamic Memory Allocation
Implementation independence of classes with applications
hw9
20

Tu 4/13
Lecture 20

Trees
Arithmetic Expression Trees and Binary Search Trees
Tree Traversal: prefix, infix, postfix

21

Th 4/15
Lecture 21

Binary Trees and applications
hw10
22

Tu 4/20
Lecture 22

Trees. Implementation of a Unix-like "file system".
Start discussion about final project
Graphs - basic concepts
Final Project
23

Th 4/22
Lecture 23

Graph Traversal
Depth First search and Applications of DFS

24

Tu 4/27
Lecture 24

More on graph traversal
Work on Final Project

P

Th 4/29
Final Project Presentation

Old exams


Ileana Streinu