CS 46101/56101 - Fall 2002
Design and Analysis of Algorithms
CS 4/56101 Syllabus
Instructor: Dr. Volkert
office: 216 MSB
phone: 672-9037
email: volkert@cs.kent.edu
office hours: T Th 2:30 - 4:00 p.m.
Prerequisites:
CS 31011, CS 33001 and MATH 12003 or equivalent (discrete
mathematics and data structures)
Time and Place:
Tuesdays and Thursdays, 12:15 pm - 1:30 pm, MSB 228.
Midterm Exam on Thursday, Oct. 17, 2002.
Final Exam: Monday, Dec 9, 2002, Room MCS 109, 12:45 pm - 2:00 p.m.
Required Textbook:
Algorithm Design, Foundations, Analysis, and Internet Examples, Goodrich and Tamassia, Wiley Publishers, 2001
ISBN: 0-471-38365-1
Suggested Reference Textbooks:
Fundementals of Algorithms, Brassard and Bratley, Prentice Hall, 1996
ISBN: 0-13-335068-1.
Introduction to
Algorithms (2nd Edition), Cormen, Leiserson, Rivest and Stein , MIT press 2001,
ISBN: 0-07-013151-1.
Data Structures and Algorithms in Java, (2nd Edition), Goodrich and Tamassia, Wiley Publishers, 2000
ISBN: 0-471-38367-8
Description.
This course will cover the fundamentals of analysis of
algorithms, time and space complexity and their trade-offs. We will also cover sorting algorithms, heaps, hash
tables, trees, greedy algorithms, graph algorithms, string algorithms and an introduction to NP-completeness.
A thorough knowledge of algorithms allows a computer scientist to determine
what problems can be solved using a given amount of resources. The tools and
techniques used for the basic algorithms covered in this course can be adapted
to provide efficient solutions to many novel problems.
The study of algorithms is mainly a mathematical study, in that it involves
calculating the amount of time used for compound solutions given costs of basic
operations, and theoretical limits on computations of certain problems.
Therefore, homeworks will not involve a lot of programming, rather algorithm
design and analysis. In the cases where programming is required, students may
program in any language they please. The stress is on algorithmic design and
clarity.
Assignments
There will be 6 homework assignments, roughly one every other week. Homeworks are due at the begining of class on the due date. Since homeworks may be discussed in class, I will mark off 20% for each day late. Homeworks may be submitted via e-mail as long as they are sent as a PDF formated file
Additionally there will be a programming project that involves
implementing some of the algorithms presented in class. Each algorithm
will be executed on instructor supplied datasets and must record
run-time statistics. Comparisons of the run-time statistics will be
written up and turned in for credit along with print-outs of your source
code and a self-assesment of your experience.
Exams and Grading
Your final course grade will be determined as follows:
Homework Assignments: 30% (6 assignments)
Programming Project: 20%
Midterm: 25%
Final Exam: 25%
Policies
- Any modification to the syllabus will be documented on the course
web site. The web site URL is as follows - http://www.cs.kent.edu/~volkert/cs46101/
- Class attendence and participation is important. I
encourage questions. Please don't be afraid to ask questions during a lecture,
as this often means that many people may have a similar question, and it is
worth stopping me.
- There will be no incompletes in this class except for reasons of dire
illness near the end of a semester in which all previous work has been
completed satisfactorily.
- Graduate students, those students enrolled in 56101, will be held to a higher level of scholarship.
- Students are encouraged to work together on homework assignments but must defer from cheating or pagiarism.
This is to say that students are allowed
to discuss homework problems but are expected to work totally independent of each other when writing up their answers.
Violation of the plagiarism and cheating policy is likely to result in failure in the assignment/course.
In addition all cases will be reported to the student conduct officer. Please see Computer Science Policy on Academic Dishonesty
- Special accommodations for students with disabilities: In accordance with
the University policy, if you have a documented disability and
require accommodations to obtain equal access in this course, please contact
the instructor at the beginning of the semester or when
given an assignment for which an accommodation is required. Students with
disabilities should verify their eligibility through the Office
of Student Disability Services (SDS) in Michael Schwartz Student Services Center (672-3391).