CS 202  Analysis of Algorithms, Fall 2017 
Instructor: Ge (Frank) Xia
Lectures: TR 11:00 am  12:15pm, AEC 429
Office: AEC 506
Phone: 6103305415
Office hours: TR 9:00  10:00 am or by appointment

[Announcements] [Textbook]
[Grading] [Schedule]
Course Description
This course introduces students to the design and analysis of computer
algorithms and their complexity. We will survey the basic algorithm design techniques. We will study
fundamental algorithms, data structures, methods of measuring the performance of
algorithms, and the notion of tractable and intractable problems.
Course Goals: At the end of the semester you should:
 be familiar with basic algorithms and algorithmic
techniques,
 be able to apply knowledge of computing and mathematics appropriate to the discipline; in particular, be able to design efficient algorithms for new problems
using the techniques learned, and be able to prove correctness and analyze the complexity
of an algorithm,
 be able to analyze a problem, and identify and define the computing requirements appropriate
to its solution; in particular, be able to analysis the time and space requirements for
algorithms for certain problems.
 Algorithms, by
Sanjoy Dasgupta, Christos Papadimitriou, and Umesh Vazirani,
Mcgraw Hill, 2006 (ISBN: 0073523402).
(no need to purchase)
 Introduction to Algorithms, 2nd Edition, by Thomas
H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein,
MIT Press/McGrawHill, 2001 (ISBN: 0262032937). The standard text book on algorithms.
 The Art of Computer Programming, volumes 13, by Donald E.
Knuth, AddisonWesley, 19971998 (ISBN: 0201485419). A canonical text
on computer science. It covers core algorithms such as searching and
sorting in great depth.
 Algorithms in Java, 3rd Edition, Parts 15, by Robert
Sedgewick, AddisonWesley, 2002. It provides extensive coverage of
fundamental data structures and algorithms. Plus, the author provides
real (not pseudo) code in Java.
 Homework Assignments and Quizzes  40%
 Midterm exam  30%
 Final exam  30%
The final letter grades will be assigned based on criteria specified in the Student Handbook.
All homework assignments are to be submitted on Moodle at 11:55pm on the due date. Each student is allowed a onetime lateness of
homework submission for up to 48 hours. Beyond this, no exceptions will be made on late or missing
homework assignments unless the student has an allowed excuse. Quizzes
will be give in class. Zeros will be given to all missing quizzes unless
the student has an allowed excuse. An allowed excuse is an approved Dean's
excuse or the instructor's permission obtained prior to the excuse.
Academic Honesty
Discussion of concepts with others is encouraged, but all assignments
must be done on your own, unless otherwise instructed. If you use any
source other than the text, reference it/him/her, whether it is a
person, a book, a solution set, a web page or whatever. You MUST write
up the solutions in your own words. Copying is strictly forbidden.
The Student Handbook of Lafayette College has a section on
Principles of Intellectual Honesty that defines academic dishonesty to
include:
 Use of other persons' writings without proper
acknowledgment,
 Use of reference material without properly crediting
sources used,
 Use of other students' work, with or without revision,
 Collaboration beyond the limits established by the
instructor,
 Submission of the same work in more than one course
A student who commits academic dishonesty is subject to Disciplinary
actions including suspension or expulsion.
Attendance
Students are expected to attend classes unless there is a reasonable excuse. A reasonable excuse is a previously approved Dean's excuse or the instructor's permission.
Changes will be made according to the progress of the course.
Fall 2017 
Sunday 
Monday 
Tuesday 
Wednesday 
Thursday 
Friday 
Saturday 
08/27
Week 1 

Ch 0.
Introduction, syllabus 

Ch 0.
Basic math, Asymptotic notation 


09/03
Week 2 

Ch 1.
Basic arithmetics


Ch 1.
Basic arithmetics



09/10
Week 3 

Ch 2.
Devide & conquer technique 

Ch 2.
Recurrence relations 


09/17
Week 4 

Ch 2.
Sort and selection 

Ch 3.
Graphs algorithms 


09/24
Week 5 

Ch 3.
Graphs algorithms 

Ch 3. Graphs algorithms 


10/1
Week 6 

Ch 3. Depthfirst search 

Midterm 


10/8
Week 7 
Fall Break 
Fall Break 

Ch3. DFS 


10/15
Week 8 

Ch 3.
Strongly connected components 

Ch 4.
BFS, Shortest paths 
Midterm Grade Due 

10/22
Week 9 

Ch 4.
Shortest paths 

Ch 5.
Greedy algorithms 


10/29
Week 10 

Ch 5. Greedy algorithms 

Ch 5. Greedy algorithms 


11/05
Week 11 

Ch 5. Greedy algorithms 

Ch 6. Dynamic programming 


11/12
Week 12 

Ch 6. Dynamic programming Withdraw Deadline 

Ch 6.
Dynamic programming 


11/19
Week 13 

Ch 6. Dynamic programming 
Thanksgiving Break 
Thanksgiving Break 
Thanksgiving Break 

11/26
Week 14 

Ch 8. P and NP 

Ch 8.
P and NP 


12/03
Week 15 

Ch 8.
P and NP 

Ch 8.
P and NP 


12/10 
Reading Day 
Final Exam period begins 




12/17 

Final Exam period ends 


Final grades due 















Federal Credit Hours:
The student work in this course is in full compliance with the federal definition of a four [two or one as appropriate for half and quarter unit courses] credit hour course. Please see the Registrar’s Office web site (http://registrar.lafayette.edu/additionalresources/cepcourseproposal/) for the full policy and practice statement.
