課程名稱 |
演算法 The Design and Analysis of Algorithms |
開課學期 |
101-2 |
授課對象 |
電機資訊學院 電子工程學研究所 |
授課教師 |
李建模 |
課號 |
EE5048 |
課程識別碼 |
921 U2110 |
班次 |
|
學分 |
3 |
全/半年 |
半年 |
必/選修 |
選修 |
上課時間 |
星期五6,7,8(13:20~16:20) |
上課地點 |
電二106 |
備註 |
EDA組碩士班在學期間二選一核心必修課程之一。 總人數上限:60人 |
Ceiba 課程網頁 |
http://ceiba.ntu.edu.tw/1012_algorithms |
課程簡介影片 |
|
核心能力關聯 |
核心能力與課程規劃關聯圖 |
課程大綱
|
為確保您我的權利,請尊重智慧財產權及不得非法影印
|
課程概述 |
This class introduces basic concepts of design and analysis of computer algorithms. The course contents include fundamental knowledge, sorting, trees, dynamic programming, graphs, NP-completeness and etc. |
課程目標 |
Students will learn how to design and analyze algorithms as well as implement it in C or C++ codes to solve problems. |
課程要求 |
Computer programming skills in C or C++ is needed.
Students are required to program in Linux systems.
Background in data structures is a plus but not required.
Grading is based on homework, programming assignments, exam, project and etc. |
預期每週課後學習時數 |
|
Office Hours |
每週三 10:00~12:00 每週四 14:00~16:00 備註: 週三為PA助教輪值.
週四為HW助教輪值.
若以下時間無法前來, 可以寄信另外約時間. |
指定閱讀 |
Cormen, Leiserson, Rivest, Stien, Introduction to Algorithms, 3rd edition, MIT Press, 2009. |
參考書目 |
|
評量方式 (僅供參考) |
|
週次 |
日期 |
單元主題 |
第0週 |
|
reading materials, STL, sorting etc |
第2週 |
3/01 |
foundation + sorting |
第4週 |
3/15 |
Greedy and DP |
第5週 |
3/22 |
trees |
第6週 |
3/29 |
video demo of RB tree
LN5 Disjoint Set |
第7週 |
4/05 |
no class |
第8週 |
4/12 |
graph |
第9週 |
4/19 |
MST |
第10週 |
4/26 |
shortest path |
第11週 |
5/03 |
maximum flow |
第12週 |
5/10 |
amortized analysis / NPC |
第13週 |
5/17 |
progress presentation/ optimization (updated 5/13) |
第14週 |
5/24 |
matrix / linear programming |
第15週 |
5/31 |
multithread |
第16週 |
6/07 |
exam |
第17週 |
6/14 |
final presentation. 每組15分鐘含QA |
|