CSCI 4470/6470 Algorithms (Fall 2008)
Tue. & Thu. 12:30 ­ 1:45 (Bio Sci 404c) / Wed. 12:20 ­ 1:10 (Boyd 306)
Instructor : Shelby Funk
Office: 215 Boyd GSRC
Phone : 2-3449
Email :
shelby@cs.uga.edu
Office hours : Monday 2:00 ­ 3:00 and Thursday 3:30 ­ 5:00
Teaching assistant: Alex Ho
TA's office & office hours: Boyd 538 / Wednesday 2:00 ­ 3:00
Course website:
http://webct.uga.edu
Class pictures:
http://cs.uga.edu/~shelby/classes/4470-6470-Fall-08/photos
Course contents
This course provides an introduction to the modern study of computer algorithms. Topics
include: asymptotic notation, basic algorithm analysis techniques, analysis of sorting algorithms,
algorithm design techniques such as divide-and-conquer and greedy algorithms, fundamental
graph algorithms, and a glance at the theory of NP-completeness. Time permitting; students will
be exposed to some advanced subjects such as randomized algorithms and real-time scheduling
algorithms.
By the end of the semester, students should know a broad array of algorithms and have tools for
selecting the best algorithm to solve a given problem.
Prerequisites
CSCI 2670 Introduction to Theory of Computing.
CSCI 2720 Data Structures.
Text
Introduction to Algorithms, T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein, 2nd ed,
McGraw-Hill, 2001.
Tentative Schedule
Part I. Introduction: Chapters 1-5 (1.5 weeks)
Part II. Sorting and order statistics: Chapters 6-9 (1.5 weeks)
Part IV. Advanced design and analysis techniques: Chapters 15-17 (4 weeks)
Part VI. Graph algorithms: Chapters 22-24 (3 weeks)
Part VII. Selected topics: Chapters 31, 34, 35 (4 weeks)
Grading policy
Written assignments: 30%
Each midterm exam : 20%
Final exam: 30%
There will be 2 midterm exams.
Homework is due at the beginning of class. I will accept homework as late as 10 AM the
following day.
Important dates
August 18 ­ 21 (Mon. ­ Thu.)
Drop for undergrads
August 18 ­ 22 (Mon. ­ Fri.)
Add for undergrads
August 18 ­ 25 (Mon. ­ Mon.)
Drop for grads
August 18 ­ 26 (Mon. ­ Tue.)
Add for grads
September 1 (Mon.)
Labor day (no classes)
September 25 (Thu.)
First midterm exam
October 23 (Thu.)
Withdrawal deadline
October 31 (Fri.)
Fall break (no classes)
November 6 (Thu.)
Second midterm exam
November 24 ­ 28 (Mon. ­ Fri.)
Thanksgiving break (no classes)
December 5 (Thu.)
Last algorithms class
December 9 (Tue.)
Friday class schedule (no algorithms class)
December 16 (Tue.)
Final Exam 12:00 ­ 3:00
Academic Dishonesty
All academic work must meet the standards included in "A Culture of Honesty."
Each student is responsible for informing themselves about these standards before performing
any academic work.
http://www.uga.edu/ovpi/honesty/acadhon.htm
. I have also provided a separate
document describing when you may (and may not) collaborate on your work.
Laptop Policy
I discourage the use of laptops or other electronic devices during class. If you have a reason to
use your laptop during class, please discuss this with me outside of class. If you have not had
such a discussion with me, you are not permitted to use your laptop in class.
Attendance policy
Regular class attendance is required though class attendance may not be used in the final
determination of grades. Students are required to attend class during the regularly scheduled tests
and the final exam unless prior arrangements have been made.
Registration policy
Your work will not be graded unless you are officially registered for this class.
Special Needs
Students with a disability or health-related issue who need a class accommodation should make
an appointment to speak with the instructor as soon as possible.
Caveat
The course syllabus is a general plan for the course; deviations announced to the class by the
instructor may be necessary." For the official University policy regarding syllabi, go to:
www.curriculumsystems.uga.edu/Policies/CourseSyllabusPolicy.pdf