Instructor: Michalis Faloutsos
Office: A-213 Bourns Hall.
Email: cs141aa@cs.ucr.edu
Note: class related email will only be answered through this account
Office Hours: After the class Tu - Thur: 2-3
Class Hours: Tu- Thur: 12:40-2:00
Web-site: www.cs.ucr.edu/~michalis/COURSES/141/141.html
General Information:
There will be a news group for the class;
ucr.cs.cs141
We switched to: https://www.cs.ucr.edu/pipermail/cs141/
Important things will be annonuced there.
IT IS YOUR RESPONSIBILITY TO KEEP CHECKING IT.
TAs:
Thomas Karagiannis tkarag@cs.ucr.edu
Sandeep Gupta sandeep
Huiying Liu hliu
Xiao Zhang xzhang
Textbook:
Introduction to Algorithms, by Cormen, Leiserson, Rivest
Note/Warning:
The exact reading material will be defined and presented in the
class and may diverge from the textbook. Students should
pay attention to what is covered by attending the classes or
referring to the class notes of other students. Although not
apparent now,
in the long run it will make their life easier.
Prerequisites:
CSC 14 or former CSC 140-A, MATH-009, MATH-112.
Ability to program in C++.
Grading Scheme:
3-4 Assignments 50%
Midterm 20%
Final 30%
Re-evaluation of assignments/test should be done within the first
week after they are returned. Given the class size, only claims
significant
in difference will be considered.
Late assighments: There will be a 10% penalty per day for late assighments
and
only for the first week.
Note/Warning on plagiarism:
Assignments should reflect individual work unless otherwise stated.
All references and sources for literature or code should be cited.
Randomly selected students may be asked to explain their assignment
to TAs to ensure that they understand it after it has been handed in.
This is an attempt to protect the honest majority of students.
Material to be covered:
Overview: graph algorithms, dynamic programming, approximation
algorithms, recursion, NP-completeness. There will also be a focus
on
object-oriented programming.
The following is a rough outline. Some things may be added or omitted
depending on class interest and needs.
Fundamental topics from the book.
Optional topics from the book (may or may not be discussed).
1. String Matching (ch. 34)
2. Maximum Flow (ch. 27)
Optional topics.
1. The Steiner tree problem
2. Desinging object-oriented programs