Credits: 4 intermediate credits in Computer Science
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.