Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
23cs500 [2023-06-10] – [Design and Analysis of Algorithms (CS500) in Spring 2023 at KAIST's School of Computing] Martin Ziegler | 23cs500 [2025-04-05] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Design and Analysis of Algorithms (CS500) in Spring 2023 at KAIST' | ====== Design and Analysis of Algorithms (CS500) in Spring 2023 at KAIST' | ||
- | All Computer Science is based on the concept of an efficient algorithm: | + | All Computer Science is based on the concept of an efficient |
+ | We thus call these ' | ||
* | * | ||
* | * | ||
- | * | + | * |
* and analysis (correctness, | * and analysis (correctness, | ||
* with proof of optimality. | * with proof of optimality. | ||
==== Synopsis ==== | ==== Synopsis ==== | ||
- | Building on undergraduate CS300 (Introduction to Algorithms), | + | Building on undergraduate |
- | the design and analysis of advanced algorithms. | + | //advanced// aspects of algorithms. |
- | More specifically we discuss, design, and analyze algorithms with respect to various __cost__ measures //beyond// (sequential) runtime, | + | More specifically we discuss, design, and analyze algorithms with respect to various __cost__ measures // |
such as | such as | ||
- | * memory, | + | * memory |
- | * parallel time, | + | * parallel time/depth, |
- | * | + | * |
- | * communication volume etc. \\ | + | * communication volume, |
- | And we discuss, design, and analyze algorithms in various __modes__ //beyond// the worst-case, | + | * #coin flips etc. \\ |
+ | And we discuss, design, and analyze algorithms in various __modes__ //beyond// the traditional | ||
such as | such as | ||
* average-case, | * average-case, | ||
* expected, | * expected, | ||
* amortized, | * amortized, | ||
- | * competitive etc. \\ | + | * competitive |
+ | * approximation ratio etc. \\ | ||
The practical impact of these algorithms is demonstrated in selected implementations. | The practical impact of these algorithms is demonstrated in selected implementations. | ||
Line 35: | Line 38: | ||
Language: English only | Language: English only | ||
- | Teaching Assistants: [[qawbecrdtey@kaist.ac.kr|현지훈]] and [[jeongho.park@kaist.ac.kr|박정호]]\\ | + | Teaching Assistants: [[cs500@theoryofcomputation.asia|현지훈 and 박정호]]\\ |
Homework: Handwritten individual solutions (English only) and programming assignments in [[https:// | Homework: Handwritten individual solutions (English only) and programming assignments in [[https:// | ||
Line 60: | Line 63: | ||
* R. Sedgewick: [[https:// | * R. Sedgewick: [[https:// | ||
* Coursera: [[https:// | * Coursera: [[https:// | ||
+ | * MIT OCW: [[https:// | ||
==== Syllabus/ | ==== Syllabus/ | ||
Line 67: | Line 71: | ||
3. Average-Case Analysis ({{: | 3. Average-Case Analysis ({{: | ||
4. Amortized Analysis ({{: | 4. Amortized Analysis ({{: | ||
- | 5. Randomization | + | 5. Randomized/ |
- | 6. Online/ | + | 6. Online/ |
7. P/NP Intermission ({{: | 7. P/NP Intermission ({{: | ||
8. Approximation | 8. Approximation | ||
- | 9. parallel Time ({{:cs500i.ppt|PPT}}, {{:cs500i.pdf|PDF}}) \\ | + | 9. parallel Time ({{:cs500p.ppt|PPT}}, {{:cs500p.pdf|PDF}}) \\ |
- | 10. Memory | + | 10. Memory |
==== E-Learning: ==== | ==== E-Learning: ==== | ||
Line 78: | Line 82: | ||
* [[https:// | * [[https:// | ||
* [[http:// | * [[http:// | ||
- | * {{averagequicksort.pdf|Solution to the quiz in Chapter 3}} | + | * {{averagequicksort.pdf|Average-Case Analysis of QuickSort}} |