| cs312 website: |
http://www.calstatela.edu/faculty/vcrespi/CS/CS312/cs312.html |
| Lectures: |
TR 1:30-3:10pm, ET A210
|
| Final Exam: |
Thursday, Dec 8, 1:30-4:00pm, ET A210
|
| Instructor: |
Valentino Crespi
vcrespi@calstatela.edu
(323) 343-4596.
ET-A318
|
| Office Hours: |
MW 3:00-4:00pm, TR 6:00-7:00pm.
|
| Course Description: |
Abstract data types and their use in constructing algorithms for
manipulating lists, trees, and graphs; analysis of algorithms for
searching, sorting, and data structure manipulation. |
| Course Goals: |
At the end of the course, students are able to
- Analyze the correctness and the computational complexity of computer
algorithms.
- Design (specify and implement) efficient advanced Data Structures.
- Know advanced design techniques and their nontrivial application
to classic problems of searching, sorting, graph optimization and
combinatorial optimization.
|
| Prerequisites: |
MATH208, MATH248, CS203 |
| Textbook: | Richard Johnsonbaugh,
Marcus Schaefer. Algorithms. Prentice Hall, 2004. |
| References: |
- Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest,
Clifford Stein. Introduction to Algorithms(2nd edition).
MIT Press and McGraw Hill, 2001.
- Michael T. Goodrich, Roberto Tamassia. Data Structures and
Algorithms in Java (4th edition). John Wiley & Sons, Inc, 2006.
|
| Topics: |
This is a general overview. However you can access the archive to see full logs of previous
instances of this same course.
- Mathematical Foundations: summation Formulas, Logarithms,
Induction, Lower and Upper bounds, Asymptotic Notation,
Recurrence Relations, Master Theorem, Loop Invariants. (cp 1-2)
- Analysis of the Correctness and of the Computational
Complexity of Computer Algorithms. (cp 1-2)
- Advanced Data Structures: Binary Search Trees, Balanced
Trees, Heaps, Indirect Heaps, Priority Queues, Dictionaries,
Hash-Tables, Union-Find structures. (cp 3)
- Graph Algorithms and Searching and Sorting Algorithms. (cp 4)
- Design Techniques: Divide and Conquer, Greedy and Dynamic
Programming. (cp 5-8)
|
| Grading Policy: | Two Midterm
Exams (25%+25%), Final Exam (40%), Homework Assignments
(10%)
| Score (%) |
Letter Grade |
|
90-100
|
A
|
|
80-89
|
B
|
|
60-79
|
C
|
|
50-59
|
D
|
|
0-49
|
F
|
|
| Academic Integrity: | Students are
allowed and encouraged to discuss reading materials with each
other. However, homework assignments must be solved and written
individually. If you obtain a solution with help then you
should acknowledge your source in the paper and then write
independently your own solution.
Cheating will not be tolerated. Cheating on any assignment or exam
will be taken seriously. All parties involved will receive a grade
of F for the course and be reported to the Academic Senate. |
| General Policies:
|
- Makeup Exams: No.
- Homework Assignments:
Homework assignments should be written neatly on standard sized
paper (8.5 x 11 inch), possibly in black or blue ink (please do not
use red) and submitted at the due date (no electronic submissions
accepted unless stated otherwise in class). Each page should be
numbered. Late submissions will not be accepted.
- Use of Cell Phones: forbidden.
- Late arrivals:
Students arriving 30min after the beginning of class will not be
admitted.
- Office:
Students are warmly invited to visit the instructor (during
the announced office hours) for questions and clarifications.
- E-mail:
E-mails addressed to vcrespi@calstatela.edu must have, in the
subject, the keyword CS312 (e.g. Subject: CS312 ...).
All the E-mails will be possibly processed in the evening and so
will be answered with a minimum delay. Be careful, the keyword in
the subject is important for automatic filtering. Wrong subjects may
result in the accidental loss of the message.
|