# Course Information:

**Course Description:** Introduction to design and analysis of
algorithms and data structures. Where appropriate, emphasis is placed on
techniques that are useful for the analysis of scientific data. Topics
include dynamic programming, linear programming, network flows, local and
heuristic search, and randomization. NP-completeness and approximation
algorithms may also be covered. Data structures discussed will include
balanced trees, priority queues, and string data structures. Minimal
previous algorithmic knowledge is assumed. Classwork will include
programming assignments, but strong programming skills are not
required.

**Instructor:** Carl Kingsford

Associate Professor, Ray and Stephanie Lane Center for Computational Biology,
School of Computer Science, Carnegie Mellon University.

carlk@cs.cmu.edu

Office: GHC 7705

Office Hours: 3pm-4:30pm, Mondays in GHC 7705 (starting Jan 28).

**TA:** Geet Duggal, `geet@cs`

Office Hours: Tuesdays, 9:30-10:30 and Fridays, 1-2pm in GHC 7413 (starting 2/11/13)

**TA:** David Farrow, `dfarrow@andrew`

Office Hours: Mondays, 2-3pm and Wednesdays, 2-3pm in GHC 7603

**Course Time and Location:** MWF
9:30-10:20am; HH B103. The course is cross-listed as 02-513.

**Estimated Coursework:** Coursework will consist of near weekly
homeworks that will include algorithm design and analysis problems and some
programming assignments, 2 midterms, and a final.

**Textbook:** *Algorithm Design* by Jon Kleinberg and Éva
Tardos, ISBN 0-321-29535-8.

# Announcements

- Homework 9 has been posted.
**Midterm #2 will be Apr. 26 in class in the normal classroom.**- Homework 8 has been posted.
**Final exam will be: Tuesday 5/7 from 1-4 in Doherty 2315.**- Homework 7 has been posted.
- Homework 6 has been posted.
- Slides and commands from the programming assistance session have been posted.
- Slides from the review session for midterm 1 have been posted.
- Homework 5 has been posted.
- There will be a review session for the midterm from 5pm - 6pm on Wednesday, 2/27 in DH A302.
- On Monday, Feb. 25, Carl's office hours will be from 2pm-3:30pm.
- An example midterm has been posted.
**Note: your midterm will cover different material and is shorter** - Midterm #1: Friday, March 1
**in McConomy in the UC**. It will cover:- Chapters 1,2,3,4 in the book (non-starred sections; obviously the focus will be on what we spent the most time on)
- Whatever of chapter 5 that we cover on or before Feb. 25
- The homeworks
- The lecture slides
- What I said in class

- Homework 4 is posted.
- A mid-semester survey has been posted.
- Homework 3 is posted.
- Solutions to the homeworks are posted on Autolab under each homework assignment.
- Homework 2 is posted.
- Homework 1 is due Monday, Jan 28 at 9:30
**PM**. - Use Autolab with your andrew ID to submit your homeworks
- Homework 1 is posted.
- Homework 0 is posted.
- The syllabus has been posted.

# Resources

An optional LaTeX template for homeworks.

Additional resources will be linked as appropriate from the course schedule.

Online lecture notes:

- Carl's Algorithms Slides
- Carl's Data Structures Slides (scroll down)
- Dave Mount's Data Structures Lecture Notes
- Dave Mount's Algorithm Lecture Notes
- CMU 15-210 lecture notes
- CMU 15-451 lecture notes

Other textbooks:

- Introduction to Algorithms by Cormen, Leiserson, Rivest, and Stein

Computer documentation:

Other web resources: