COMP 482 / ELEC 420: Design and Analysis of Algorithms

Catalog Description:
We will study methods for designing and analyzing computer algorithms and data structures. The focus of this course will be on the theoretical and mathematical aspects of algorithms and data structures.
Every student is expected to join the comp482 Yahoo group. It is expected that you will check the set of posts to our group regularly during the semester, and at least once a day in the couple of days before each quiz. Whenever I need to send a message and reach everyone quickly, I will post a message to this group. There will also be a class webpage that will be used to post homeworks, quizzes, solutions, etc.

Chris Jermaine (Email: My office hours will be Tu Th 8PM-9:30, or by appointment.

Niketan Pansare (Email: My office hours will be Wednesday: 2:00PM-3:00PM (Duncan Hall Rm# 2070), or by appointment. I usually check my mail only twice a day (mostly at 11AM and 4PM). Call me at 352 870 4782 if you want a reply before that.

Jie Zheng (Email: My office hours will be Wednesday: 3:00PM-4:00PM (Duncan Hall 3002), or by appointment.

Meeting times and locations:
10:50AM - 12:05PM, Tu Thu, Duncan Hall 1064

COMP 280 or the equivalent, plus a basic understanding of probability and statistics. Essentially, I assume that you know basic data structures and algorithms (specifically, linked lists, trees, sorting). If you have questions regarding your background and whether it is sufficient, please contact Chris.

Required Textbook:
Introduction to Algorithms, 2nd edition, by Cormen, Leiserson, Rivest, and Stein, published by McGraw Hill, 2001.

Grading Policy:
All grading is based on 10 quizzes, each of which counts as 12.5% to your grade. Lowest two scores will be dropped. This will take place on most Thursday (unless otherwise announced). There are no make-up quizzes.
One homework will be assigned per week. This homework is not graded, but will help to prepare for the quiz.
A is 90%+, a B 80%+, a C 70%+, and so on.

Lecture Schedule:
Week# Topic to be covered
1 Asymtotics and big-O notation
1-2 Sorting and Searching
3-4 Dynamic Programming
4-5 String Algorithms
6-7 Graph Algorithms
8-9 Computational Geometry
10-11 Optimization
12 Randomized Algorithms
13-15 NP Completeness


Fun Stuff