- Instructor: Dr. Subhash Suri (suri@cs.ucsb.edu)
- Class: MW 9:30-10:45 (Phelps 3526)
- Office Hours: Tu 11-12 (HFH 2111) or email

### Course Information

- Syllabus
- Teaching Assistants:
- Neeraj Kumar (neeraj@cs.ucsb.edu).

TA Hours: Fri 3:30-5:30 PM (Trailer 698, in front of HFH) - Raymond Wong (rwong@cs.ucsb.edu).

TA Hours: Thur 12-2 PM (CS TA Trailer 936)

- Neeraj Kumar (neeraj@cs.ucsb.edu).
- Discussion Sections:
- Fri 1:00-1:50 (GIRV 1115)
- Fri 2:00-2:50 (387 103)

- Recommended Textbooks:
- Data Structures and Algorithm Analysis, by Weiss
- Algorithm Design, by Kleinberg and Tardos
- Introduction to Algorithms, by Cormen, Leiserson, Rivest, Stein.

- Grade Composition
- 50% homework and programming assignment
- 50% midtern and final exam

- Syllabus

### Lecture Slides

- Introduction (lecture 1) (txt)
- Activity Scheduling (txt)
- Huffman Coding (txt)
- Other Greedy Examples (graph algorithms) and (clustering)
- Divide and Conquer (pdf)
- Dynamic Programming (pdf)
- NP-Completeness (Lecture 1) (Lecture 2) (Lecture 3)
- Approximation Algorithms (Vertex and Set Covers)
- Approximation Algorithms (Bin Packing)
- Approximation Algorithms (Others)

### Homework Assignments

- 1. Homework #1.
- 1. Homework #2.

### Programming Assignments

- 1.
**Programming Assignment #1**Program 1.**Deadline Jan 22 (11:59 PM).** - 1.
**Programming Assignment #2**Program 2.**Deadline Feb 26 (11:59 PM).**

- 1.