|
|
|
|
|
|
|
|
1 |
|
|
|
²Ä¤@½Ò ½Òµ{²Ó¸`¡F§Ç½×¡Gºtºâªk¤ÀªR¡A´¡¤J±Æ§Çªk(Insertion Sort)¡A¦X¨Ö±Æ§Ç(Merge Sort)
¾\Ū¡G1-2³¹
Lecture 1 Administrivia; Introduction: Analysis of Algorithms, Insertion Sort, Mergesort
Reading: Chapters 1¡V2 |
|
|
|
-
|
|
|
µo´úÅç 0
Quiz 0 Out |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
-
|
|
|
|
ºt²ß½Ò 1 ºtºâªkªº¥¿½T©ÊRecitation 1 Correctness of Algorithms |
|
|
¥æ´úÅç 0
Quiz 0 Due
µo¡m§@·~ 1¡n
PS 1 Out |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
|
|
|
²Ä¤G½ÒÁͪñ²Å¸¹¡C»¼°j¦¡¡G¨ú¥Nªk¡A°j°éªk¡A¥D¤è¦¡
¾\Ū¡G3-4 ³¹¡A°£¤F¡±4.4
Lecture 2 Asymptotic Notation. Recurrences: Substitution, Iteration, Master Method
Reading: Chapters 3¡V4, Excluding §4.4 |
|
|
|
-
|
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
|
|
|
²Ä¤T½Ò ¦UÓÀ»¯}ªk¡G Strassen ºtºâªk¡A¶O¤ó¼Æ¦C¡A¦h¶µ¦¡¼ªk¡C
¾\Ū¡G28 ³¹²Ä 2 ¸`¡A30³¹²Ä1¸`
Lecture 3 Divide and Conquer: Strassen's Algorithm, Fibonacci Numbers, Polynomial Multiplication
Reading: §28.2 and §30.1 |
|
|
|
-
|
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
|
|
|
-
|
|
|
|
ºt²ß½Ò 2 »¼°j¤½¦¡¡AÃP´²©Ê½è
¾\Ū¡GAkra-Bazzi ªºÁ¿¸q
Recitation 2 Recurrences, Sloppiness (Akra-Bazzi)
Reading: Akra-Bazzi Handout |
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6 |
|
|
|
²Ä¥|½Ò §Ö³t±Æ§Çªk¡AÀH¾÷ºtºâªk
¾\Ū¡G5 ³¹ 1 ¨ì 3 ¸`¡A7 ³¹
Lecture 4 Quicksort, Randomized Algorithms
Reading: §5.1¡V5.3, Chapter 7 |
|
|
|
-
|
|
|
¦¬¡m§@·~ 1¡n
µo¡m§@·~ 2¡n
PS 1 Due
PS 2 Out |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
|
|
|
-
|
|
|
|
ºt²ß½Ò 3 ±Æ§Ç¡G°ï¿n±Æ§Çªk¡A°ÊºA¶°¦X¡AÀu¥ý¦î¦C
¾\Ū¡G6 ³¹
Recitation 3 Sorting: Heapsort, Dynamic Sets, Priority Queues
Reading: Chapter 6 |
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8 |
|
|
|
²Ä¤½Ò ½u©Ê®É¶¡ªº±Æ§Çªk¡A¤U¡Ap¼Æ±Æ§Çªk¡A °ò¼Æ±Æ§Çªk
¾\Ū¡G 8 ³¹²Ä 1 ¨ì 3 ¸`
Lecture 5 Linear-time Sorting, Lower Bounds, Counting Sort, Radix Sort
Reading: §8.1¡V§8.3 |
|
|
|
-
|
|
|
¦¬¡m§@·~ 2¡n
µo¡m§@·~ 3¡n
PS 2 Due
PS 3 Out |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9 |
|
|
|
²Ä¤»½Ò §Ç¦C²Îp¡A¤¤¦ì¼Æ
¾\Ū¡G9 ³¹
Lecture 6 Order Statistics, Median
Reading: Chapter 9 |
|
|
|
-
|
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10 |
|
|
|
-
|
|
|
|
ºt²ß½Ò 4 ¤¤¦ì¼ÆªºÀ³¥Î¡A±í¦¡±Æ§Ç
¾\Ū¡G8 ³¹²Ä 4 ¸`
Recitation 4 Applications of Median, Bucketsort
Reading: §8.4 |
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11 |
|
|
|
²Ä¤C½Ò Âø´ê¡A¸U¥ÎÂø´ê
¾\Ū¡G 11 ³¹ 1 ¨ì 3 ¸`
Lecture 7 Hashing, Universal Hashing
Reading: §11.1¡V§11.3 |
|
|
|
-
|
|
|
¦¬¡m§@·~ 3¡n
µo¡m§@·~ 4¡n
PS 3 Due
PS 4 Out |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12 |
|
|
|
²Ä¤K½Ò Âø´ê¨ç¼Æ¡A§¹¬üÂø´ê
¾\Ū¡G11 ³¹²Ä 5 ¸`
Lecture 8 Hash Functions, Perfect Hashing
Reading: §11.5 |
|
|
|
-
|
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13 |
|
|
|
-
|
|
|
|
ºt²ß½Ò 5 ´úÅç 1 ½Æ²ß
Recitation 5 Quiz 1 Review |
|
|
¦¬¡m§@·~ 4¡n
PS 4 Due |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14 |
|
|
|
µû¤À«áªº§@·~4¥i¥H¦b¤¤¤È®³¨ì
Graded PS 4 Available by Noon |
|
|
|
-
|
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15 |
|
|
|
´úÅç 1
Quiz 1 in Class |
|
|
|
-
|
|
|
´úÅç 1Quiz 1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
16 |
|
|
|
-
|
|
|
|
ºt²ß½Ò 6 ¤G¤¸·j´M¾ð¡A¾ðªº°lÂÜ
¾\Ū¡G12 ³¹ 1 ¨ì 3 ¸`
Recitation 6 Binary Search Trees, Tree Walks
Reading: §12.1¡V§12.3 |
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
17 |
|
|
|
²Ä¤E½Ò ¤G¤¸·j´M¾ð©M§Ö³t±Æ§ÇªkªºÃö«Y¡FÀH¾÷¤G¤¸·j´M¾ðªº¤ÀªR
¾\Ū¡G12 ³¹ 4 ¸`
Lecture 9 Relation of BST's to Quick Sort; Analysis of Random BST
Reading: §12.4 |
|
|
|
-
|
|
|
µo¡m§@·~ 5¡n
PS 5 Out |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
18 |
|
|
|
²Ä¤Q½Ò ¬õ¶Â¾ð¡A±ÛÂà¡A´¡¤J¡A§R°£
¾\Ū¡G13 ³¹
Lecture 10 Red-Black Trees, Rotations, Insertions, Deletions
Reading: Chapter 13 |
|
|
|
-
|
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
19 |
|
|
|
-
|
|
|
|
ºt²ß½Ò 7 2-3¾ð¡A B-¾ð
¾\Ū¡G18 ³¹ 1 ¨ì 2 ¸`
Recitation 7 2-3 Trees, B-Trees
Reading: §18.1¡V§18.2 |
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20 |
|
|
|
²Ä¤Q¤@½Ò ÂX¥R¸ê®Æµ²ºc¡A½u¬q¾ð
¾\Ū¡G14 ³¹
Lecture 11 Augmenting Data Structures, Interval Trees
Reading: Chapter 14 |
|
|
|
-
|
|
|
¦¬¡m§@·~ 5¡n
µo¡m§@·~ 6¡n
PS 5 Due
PS 6 Out |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21 |
|
|
|
²Ä¤Q¤G½Ò pºâ´X¦ó¡A°Ï¶¡¬d¸ß
¾\Ū¡G33 ³¹ 1 ¨ì 2 ¸`
Lecture 12 Computational Geometry, Range Queries
Reading: §33.1¡V§33.2 |
|
|
|
-
|
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
22 |
|
|
|
-
|
|
|
|
ºt²ß½Ò 8 ¥Y¦hÃä§Î
¾\Ū¡G33 ³¹ 3 ¸`
Recitation 8 Convex Hulls
Reading: §33.3 |
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
23 |
|
|
|
²Ä¤Q¤T½Ò van Emde Boas¡AÀu¥ý¦î¦C
¾\Ū¡Gvan Emde Boas ªºÁ¿¸q
Lecture 13 van Emde Boas, Priority Queues
Reading: van Emde Boas Handout |
|
|
|
-
|
|
|
¦¬¡m§@·~ 6¡n
µo¡m§@·~ 7¡n
PS 6 Due
PS 7 Out |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
24 |
|
|
|
²Ä¤Q¥|½Ò Åu´£ºtºâªk¡Aªíªº¿¼W¡A¼ç¯àªk
¾\Ū¡G17 ³¹
Lecture 14 Amortized Algorithms, Table Doubling, Potential Method
Reading: Chapter 17 |
|
|
|
-
|
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
25 |
|
|
|
-
|
|
|
|
ºt²ß½Ò 9 Ävª§¤ÀªR¡A¦Û§Ú«²Õ§Ç¦C
Recitation 9 Competitive Analysis, Self-Organizing Lists |
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
26 |
|
|
|
²Ä¤Q¤½Ò °ÊºA³W¹º¡A³Ìªø¬Û¦P¤l§Ç¦C¡A³Ì¨Î¤G¤¸·j´M¾ð
¾\Ū¡G15 ³¹
Lecture 15 Dynamic Programming, Longest Common Subsequence, Optimal BST
Reading: Chapter 15 |
|
|
|
-
|
|
|
¦¬¡m§@·~ 7¡n
µo¡m§@·~ 8¡n
PS 7 Due
PS 8 Out |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
27 |
|
|
|
²Ä¤Q¤»½Ò ³g°ýºtºâªk¡A³Ì¤pÂX±i¾ð
¾\Ū¡G16 ³¹ 1 ¨ì 3 ¸`¡A 23 ³¹
Lecture 16 Greedy Algorithms, Minimum Spanning Trees
Reading: §16.1¡V16.3 and Chapter 23 |
|
|
|
-
|
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
28 |
|
|
|
-
|
|
|
|
ºt²ß½Ò 10³g°ýºtºâªk©M°ÊºA³W¹º½d¨Ò
Recitation 10 Examples of Greedy Algorithms and Dynamic Programming |
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
29 |
|
|
|
²Ä¤Q¤C½Ò ³Ìµu¸ô®|¡ADijkstraºtºâªk¡A¼s«×Àu¥ý·j´Mªk
¾\Ū¡G22 ³¹1¡A 2 ¸`¡F²Ä 580 - 587 ¶¡A24³¹ 3 ¸`
Lecture 17 Shortest Paths, Dijkstra's Algorithm, Breadth-First Search
Reading: §22.1, §22.2; pp. 580¡V587, §24.3 |
|
|
|
-
|
|
|
¦¬¡m§@·~ 8¡n
µo¡m§@·~ 9¡n
PS 8 Due
PS 9 Out |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
|
|
|
-
|
|
|
|
ºt²ß½Ò 11 ²`«×Àu¥ý·j´Mªk¡AÃ䪺¤ÀÃþ
¾\Ū¡G22 ³¹ 3 ¨ì 5 ¸`
Recitation 11 Depth-First Search, Edge Classification
Reading: §22.3¡V22.5 |
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
31 |
|
|
|
²Ä¤Q¤K½Ò ³Ìµu¸ô®|¡ABellman-Ford¡ADAG¤ºªº³Ìµu¸ô®|¡A®t²§¨î¦¡
¾\Ū¡G24 ³¹ 1, 2, 4, 5 ¸`
Lecture 18 Shortest Paths, Bellman-Ford, Shortest Paths in DAGs, Difference Constraints
Reading: §24.1, §24.2, §24.4, §24.5 |
|
|
|
-
|
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
32 |
|
|
|
²Ä¤Q¤E½Ò ¥þ¦¨¹ï³Ìµu¸ô®|¡A°ÊºA³W¹º¡AFloyd-Warshall¡AJohnson ªººtºâªk
¾\Ū¡G25 ³¹
Lecture 19 All-Pairs Shortest Paths, Dynamic Programming, Floyd-Warshall, Johnson's Algorithm
Reading: Chapter 25 |
|
|
|
-
|
|
|
¦¬¡m§@·~ 9¡n
PS 9 Due |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33 |
|
|
|
²Ä¤G¤Q½Ò ¤À³Î¶°¦X¸ê®Æµ²ºc
¾\Ū¡G21 ³¹
Lecture 20 Disjoint-Set Data Structure
Reading: Chapter 21 |
|
|
|
-
|
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
34 |
|
|
|
µû¤À«áªº§@·~9¥i¥H¦b¤¤¤È®³¨ì
Graded PS 9 Available by Noon |
|
|
|
-
|
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
|
|
|
²Ä¤G¤Q¤@½Ò µo¦^®a´úÅç 2 ; ¹D¼w¡A¸ÑÃD (±j¨î¥X®u)
Lecture 21 Take-Home Quiz 2 Handed Out; Ethics, Problem Solving (Mandatory Attendance) |
|
|
|
-
|
|
|
µo´úÅç 2
Quiz 2 Out |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
36 |
|
|
|
-
|
|
|
|
¨S¦³ºt²ß½Ò - ¸Ñµª´úÅç 2!
NO RECITATION - Work on Quiz 2!
|
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
37 |
|
|
|
¨S¦³½Ò
ºtºâªkµ{¦¡¤ñÁɶ}©l (¦Û¥Ñ°Ñ¥[)
NO LECTURE
Algorithmic Programming Contest Begins (Optional) |
|
|
|
-
|
|
|
¦¬´úÅç 2
Quiz 2 Due |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
38 |
|
|
|
²Ä¤G¤Q¤G½Ò ºô¸ô¬y¶q¡A³Ì¤j¬y¶q³Ì¤p¤Á³Î©w²z
¾\Ū¡G26 ³¹ 1 - 2 ¸`
Lecture 22 Network Flow, Max-Flow Min-Cut Theorem
Reading: §26.1¡V 26.2 |
|
|
|
-
|
|
|
µo¡m§@·~ 10¡n (¿ïµª)
PS 10 Out (Optional) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
|
|
|
-
|
|
|
|
ºt²ß½Ò 12 °t¹ï¡]µù¡G³Ì¤j¤G¤À¹Ï°t¹ï¡^
¾\Ū¡G26 ³¹ 3 ¸`
Recitation 12 Match Making
Reading: §26.3 |
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
40 |
|
|
|
²Ä¤G¤Q¤T½Ò ºô¸ô¬y¶q¡AEdmonds-Karp ºtºâªk
Lecture 23 Network Flow, Edmonds-Karp Algorithm |
|
|
|
-
|
|
|
°ÑÁɵª®×ºI¤î
Contest Entries Due |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
41 |
|
|
|
²Ä¤G¤Q¥|½Ò ÀH°ó´úÅç¡F¤ñÁɹ{¼ú¡F«áÄò½Òµ{ªº°Q½×
Lecture 24 Diagnostic Quiz in Class; Contest Awards; Discussion of Follow-on Courses |
|
|
|
-
|
|
|
¡m§@·~ 10¡n¸Ñµª
PS 10 Solutions Out |
|
|
|
|
|
|
|