CS 222/420 Winter 1999                          SYLLABUS                   January 13, 1999

Instructor:      Jeffrey Horn,  email:     jhorn@nmu.edu
                            office:  161D West Science Building
                            phone:  227-1607
Office Hours:   Mon.                        Wed.                    Fri.
                            3 - 6 pm                3 - 6 pm             12 - 2 pm,  other times by appointment
Textbook:  Data Abstraction and Problem Solving with C++ (Walls and Mirrors)  by Carrano, Helman, and Veroff (2nd Edition)
Recommended:  (a practical introduction to) Software Design with C++ by Steven P. Reiss, or any C++ reference book
Classroom:   West Science 283
Meeting Times:  10am MWF
Prerequisites:  CS 122 Computer Science II , and MA 240 (or CS 220 for the CS 420 folks)
Our web page:   http://euclid.nmu.edu/~jeffhorn/Classes/CS222

 (I will use the web page EXTENSIVELY, posting everything I can up there as soon as possible.  This includes all electronic forms of handouts, assignments, solutions, sample tests, etc.  Also I will post announcements, links to interesting, topic-related sites, etc.  So please check our page regularly!  At the very least, once a week.)



TOPICS:

OVERVIEW AND REVIEW

SEARCHING ADVANCED SORTING GRAPH PROBLEMS AND ALGORITHMS
    -  execution time, clock time
NUMBER PROBLEMS AND ALGORITHMS
***********************************************************************************
BELOW IS FOR CS 420
***********************************************************************************
MODELS OF COMPUTATION ADVANCED DATA STRUCTURES AND ALGORITHMS ADVANCED ANALYSIS PARALLEL AND DISTRIBUTED ALGORITHMS


GRADING:

10% Written homeworks.
45% Programs.
10 % Quizes
10 % Mid-Term Exam
15% Final exam, comprehensive.
10% Instructor's discretion



  COMPUTING FACILITIES:
One of the goals of this course is exposure to the Unix operating system and program development environment.  Toward that end, we will use the PCs running Linux (free Unix for the Intel processors) in our PC Lab (WS 162).  Everyone should feel free to use any development environment (e.g., Code Warrior on a Mac) that they wish, but I will only provide "support" for the Unix-based C++ compilers (e.g., gcc).  These machines have a GUI (the Unix X windows environment) but we will use mostly a text based interface (e.g., the command line, simple text editors such as "pico" or "vi", etc.), so that program development can be done via a simple terminal emulation from anywhere on the internet by remotely logging in to the PCs in WS 162.  This will allow you to access the UNIX programming environment outside of lab hours (generally 8am-5pm M-F).
We might also use the program Mathematica (mma) from Wolfram Research, for run-time analysis and graphing.  This software also runs on the Linux machines.


NOTE:  If you have a need for disability-related accommodations or services, please inform the Coordinator of Disability Services in the Disability  Services Office at 405 Cohodas (227-1550).  Reasonable and effective  accommodations and services will be provided to students if requests are  made in a timely manner, with appropriate documentation, in accordance with  federal, state, and University guidelines.