20417 Algorithms

Credits: 4 intermediate credits in Computer Science

Prerequisites: none

Required: Linear Algebra I, Data Structures and Introduction to Algorithms1

The course is based on a translation (by Tamar Almog) of chapters 1-7 of Algorithm Design, by J. Kleinberg and E. Tardos (Addison-Wesley, 2006).

Objectives: To familiarize students with the basic methods and principles of algorithm design; to apply the methods in algorithmic problems; to deepen study of methods for analyzing algorithms.

Chapters: Introduction: Some representative problems; Basics of algorithms analysis; Graphs; Greedy algorithms; Divide and conquer; Dynamic programming; Network flow.

1Students who took Data Structures (20433), not Data Structures and Introduction to Algorithms (20407), are advised to consult with the course coordinator before enrolling in this course.