San José State University
Computer Science 155
Introduction to the Design and Analysis of Algorithms
Course Code: 27718
Spring 2013
Tuesdays and Thursdays 12:00-1:15pm in MH 422
Information about the Instructor
Name: Sami Khuri
Office: 418 MacQuarrie Hall
Phone: 924-5081
Office Hours: Tuesdays and Thursdays: 1:15 - 2:15pm.
Catalog Description
Algorithm design techniques: dynamic programming, greedy
algorithms, Euclidean and extended Euclidean algorithms, Discrete
and Fast Fourier transforms. Analysis of algorithms, intractable
problems and NP-completeness. Additional topics selected from:
selection algorithms and adversary arguments, approximation
algorithms, parallel algorithms, and randomized algorithms.
Prerequisite: CS146 or instructor consent.
Main Textbook
Algorithms
by S. Dasgupta, C.H. Papadimitriou, and U.V. Vazirani
- No need to purchase the book. It is online.
- We shall cover topics from other books and articles that are freely
available on the internet.
- I shall also have my own slides that I will upload (6 slides per
page) for the students enrolled in the class.
Learning Outcomes
On successful completion of CS 155, the student will:
- have a full understanding of the four algorithmic techniques: greedy,
divide-and-conquer, dynamic programming, and branch-and-bound
- have studied a range of probabilistic algorithms, such as genetic
algorithms, simulated annealing, neural networks and seen
how they can be used to solve optimization problems
- understand the general notion of complexity classes, P and NP,
completeness and hardness, and the relationships between classes by
reduction
- know when to use exact, heuristic, and approximation algorithms
- know when to use and also how to analyze approximation algorithms
- know when to use brute-force and when to use problem decomposition by
exploiting the structure of the problem at hand
- appreciate the beauty of algorithms
Course Requirements
- Dual Role of MH422: Lecture/Lab
MH422 will be used as a dual purpose room.
It can be a regular lecture room or it can be
a computer laboratory for hands-on exercises.
Lecture Mode: This is when MH422 is used as a regular lecture
room.
Students are expected to listen and follow the lecture.
Be considerate to your classmates and follow the lecture. Do not
use the computer and/or talk to your neighbor.
Lab Mode: This is when MH422 is used as a computer lab. Use the
computers and share your ideas and solutions with your classmates.
We shall alternate between the two modes.
A typical class will begin with a lecture (Lecture Mode) followed
by a hands-on (Lab Mode).
- Hands-On Exercises:
We will have a number of hands-on exercises.
The purpose of the hands-on exercises is to develop your
understanding
of the material and your skills in problem-solving. You will be
asked to come to the front of the class and to go through your
solutions (programs) and share them with (explain them to) the rest
of the class.
- Term Project:
There will be a programming group project. Each group consists of two
or three students.
More infromation about the topic of the project will be given in February.
The term-project is due on Tuesday, May 7, 2013.
- Exams:
Exam One: Tuesday, March 5, 2013.
Exam Two: Tuesday, April 30, 2013.
Final Exam: Thursday, May 16, 2013, from 9:45 to 12:00pm (noon).
Exam One and Exam Two are each one hour and fifteen minutes
long. All exams are in-class,
closed-book and comprehensive. You will get back your exams
within one week at which time we'll go over them in class.
Exams will be collected and kept with me.
There will be no make-up exams.
Class Attendance
Class attendance is strongly encouraged.
In class, we shall cover many
topics and examples that are neither in the class notes
nor in the textbook. If you miss a lecture,
it is your responsibility to find out what was covered in
class (this includes: handouts given
out during your absence, corrected typos and errors,
examples discussed in class - that
are neither in the book nor in the notes - clarifications
and changes made to the project, the hands-on exercises, etc...).
Grading Policy
The final grade will be computed as shown below:
Hands-On: 20%
Term Project: 20%
Exam One: 20%
Exam Two: 20%
Final: 20%
[97, 100] A+
[93, 97) A
[90, 93) A-
[87, 90) B+
[82, 87) B
[80, 82) B-
[77, 80) C+
[72, 77) C
[70, 72) C-
[67, 70) D+
[62, 67) D
[60, 62) D-
[0, 60) F
Add/Drop Policy
For those wishing to add this course, the deadline is February 11, 2013.
The last day to drop with a full refund is February 4, 2013.
According to University and Department guidelines, dropping after
February 4, 2013, requires a serious and compelling reason to drop a
course.
Grades alone do not constitute reason to drop a course.
Students who stop attending without officially dropping will
be issued a U at the end of the semester which is counted as
an F in calculations of GPA. See University Catalog.
Academic Integrity
Students should read the ``Policy on Academic Integrity" in the
University Catalog. Anyone caught cheating (including copying
the work of others) on any assignment in the
class will receive a failing grade for the assignment, in addition
to other sanctions that are permitted by the University, including
but not limited to the filing of a report with the Dean
of Student Services and expulsion from the University.
Students should read the ``Policy on Academic Integrity"
in the University Catalog. The "Policy on Academic Integrity"
can be found
here.
-
Anyone caught cheating (including
copying the work of others) on any assignment in the class will
receive a failing grade for the assignment, in addition to other
sanctions that are permitted by the University, including but not
limited to the filing of a report with the Dean of Student Services
and expulsion from the University.
- Your own commitment to learning, as evidenced by your enrollment at
San
José State University, and the Universitys Academic Integrity Policy
requires you to be honest in all your academic course work. Faculty are
required to report all infractions to the Office of Judicial Affairs.
Disability Resource Center
If you need course adaptations or accommodations because of a
disability, or if you need special arrangements in case the building must
be evacuated, please make an appointment with me as soon as possible, or
see me during office hours. Presidential Directive 97-03 requires that
students with disabilities register with DRC to establish a record of
their disability.