CPS 100E Syllabus, Fall 1996

The reading should be done for the class it's listed after. This will make for a better classroom dialog.

Reading/Topics
Date Topic Reading
Sept 3
Sept 5
Overview, C++, OOP
Classes, Control, Functions
left-over summer reading, 3.4--4.1
Astrachan Sections 4.2--4.6, 5.1--5.3, 8.1, 8.2
Sept 10
Sept 12
Classes, Streams, Vectors
Vectors, Patterns, Classes
Astrachan Sections 5.4--5.9, 6.1, 6.2
Astrachan Sections 6.3--6.4, 7.1--7.3, 8.4
Sept 17
Sept 19
Streams, Matrices
Matrices, Pointers
Astrachan Sections 9.1--9.6, 11.5, 11.6
Catch up
Sept 24
Sept 26
Pointers, Linked/Dynamic structures
Abstractions/Implementations
Astrachan Sections 12.1 -- 12.3
Astrachan 12.4, Weiss, Sections 6.1, 6.2
Oct 1
Oct 3
Stacks, Queues, Lists
review
Weiss, Chapter 16 (Astrachan 10/Weiss 7)
Weiss, Chapter 15, Chapter 11
Oct 8
Oct 10
Test 1
algorithm analysis, sorting
study
Weiss Chapters 5,8; Astrachan 11.1--11.4
Oct 15
Oct 17
sorting, recurrence relations
recursion/induction
catchup
Oct 22
Oct 24
fall break
Trees
fall break
Weiss 6.5, 6.6, 11.2.4, Astrachan 12.9
Oct 29
Oct 31
Search Trees
Balanced Trees
Weiss 17, 18.1--18.3
18.4, 18.5 B-tree reading
Nov 5
Nov 7
catch up catch up
Nov 12
Nov 14
Tables, Hashing
iterators, state
Weiss 6.7, 19, Astrachan 12.8
Weiss 19
Nov 19
Nov 21
Test 2
priority queues
study
Weiss Chapter 20
Nov 26
Nov 28
Huffman Codes
Thanksgiving
Weiss 12.1
mashed potato recipes
Dec 3
Dec 5
review catch up
Graphs
catch up
Weiss 14.1
Dec 10
Dec 12
Graphs, Algorithms
All Questions answered
Weiss Chapter 14
everything


Compiling

You must use g++ 2.7.2 for the programs in this course. This compiler implements exceptions, run-time type identification, and fixes some bugs in 2.6.x.

We'll go over how to set up your environment in the first lab.

To use this compiler on the acpub system, you'll need to change your path. Add the line below to your .cshrc file to put /afs/acpub/project/cps/bin before /usr/local/bin in your path.

     set path  = (/afs/acpub/project/cps/bin $path)
If you want my bin in your path (for submit to work) you should add /afs/acpub.duke.edu/users8/ola/bin at the end of your path, otherwise you'll need to type ~ola/bin/submit100e to use the submit program.

Compiling on CS machines

For the moment, to use g++ 2.7.x on CS machines, you'll need to put /usr/pkg/gcc-2.7.2/bin before /usr/local/bin in your path. I hope to have a directory of symbolic links set up so that there isn't the need for individual package bins like this.

Emacs

If you don't use emacs, I urge/require you to start. Emacs has built-in support for RCS, debugger support, etc. etc.

Back to CPS 100E home page

Back to Owen Astrachan's home page