2021 Spring Course
1. Course Information
Instructor : Prof. Hee-Kap Ahn
TA : Seungjun Lee / Dahye Jeong / Chanyang Seo
Lecture room : Online
Lecture hours : Monday & Wednesday 09:30~10:45
2. Course Objectives
Algorithms are procedures or methods that solve problems arising across the full range of computing applications. Algorithmic problems from those areas, however, are rarely mathematically well-formed and they often come with application-specific details, most of which are extraneous. The goal of this course is to understand how to formulate problems, and from this, how to design efficient algorithms for the resulting problems. The course starts with an introduction to algorithms. Then we study four essential algorithm design techniques: greedy algorithms, divide and conquer, dynamic programming, and network flow. We will also spend a few weeks on computational intractability and approximation algorithm, a technique for dealing with computational intractable problems.
3. Prerequisites & require
CSED101 Programming and Problem Solving
CSED233 Data structure
Midterm exam : 30%, Final exam : 30%, Homework : 20%,
Problem solving (programming, project) : 20%
5. Course Materials
Algorithms by Sanjoy Dasgupta, Christos Papadimitriou, and Umesh Vazirani, 2008, McGraw-Hill International Edition.
6. Course References
Algorithm Design by Jon Kleinberg and Éva Tardos, 2006, Addison Wesley.
7. Course Plan
# Week 1 : Introduction
# Week 2 : Divide-and-Conquer
# Week 3-4 : Graph algorithms
# Week 5-6 : Greedy algorithms
# Week 6-7 : Dynamic programming
# Week 8 : Midterm exam.
# Week 9-10 : Linear programming and reductions
# Week 11-12 : Computational intractability
# Week 13-14 : Approximation algorithms
# Week 15 : Randomized algorithms
# Week 16 : Final exam.
8. Course Operation
Hand writing HW
9. About Handwrite Homework
Choose one submit way.
1. Submit Algorithms Lab(B2-208).
2. Scan or take a picture your HW and submit by e-mail to TA.
3. We also receive tablet handwriting.
* You cannot use word processor.