SYLLABUS
CMPT 243 Algorithms and Data Structures
Fall 2007
Classes: Fisher 112, TR 12:30-1:55
Instructor: Paul Shields, Fisher 111, (413) 243-0651
Email: pshields@simons-rock.edu
Office Hrs: M 3:30-4:30, T 3:30-4:30, R 3:30-4:30, or by appt.
Web Site: http://cs.simons-rock.edu/cmpt243/
Text
Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Second Edition, Addison-Wesley, 2007
Description
This is the second course in the Computer Science curriculum, and assumes a basic competence in a high level imperative language such as C, C++ or Java. Topics to be covered include recursion, analysis of algorithms, abstract data types, and data structures such as stacks, queues, hash tables, lists, trees, sets and graphs, along with their associated algorithms. This course introduces the core subject matter of computer science, and provides a basis for all further work in the discipline. It requires language proficiency, but is not itself a language course--it deals with abstractions which could be embodied in any sufficiently high level language.
Taught in Java (version 5.0 or higher). Prerequisite CMPT 242 or equivalent.
Objectives
1) to introduce the student to common data structures employed in computer science and to develop proficiency with the algorithms that use these data structures
2) to study the analysis of algorithms and learn the principles of asymptotic notation.
3) to develop a deeper appreciation for the characteristic subject matter of computer science
Assignments
There will be assignments roughly every two weeks which will generally consist of programs to be written in Java, although there will also be some problems in analysis--particularly for assignment #2. Projects will be evaluated on the basis of correctness, robustness, clarity, elegance, and documentation. Projects may be difficult and I urge you to start early and allow more time than you think you will need. Late assignments may be penalized one letter grade per day late.
Attendance
The normal college policy on attendance will be followed. 2 absences will result in a warning, 3 or more in possible suspension from the course.
Grading
Assignments and Quizzes 100%