課程名稱 |
資料結構與演算法 DATA STRUCTURES AND ALGORITHMS |
開課學期 |
97-2 |
授課對象 |
生物資源暨農學院 生物機電工程學研究所 |
授課教師 |
陳倩瑜 |
課號 |
BME5902 |
課程識別碼 |
631 U1250 |
班次 |
|
學分 |
3 |
全/半年 |
半年 |
必/選修 |
選修 |
上課時間 |
星期二5,6(12:20~14:10)星期四5(12:20~13:10) |
上課地點 |
|
備註 |
上課教室:電電實驗室. 總人數上限:30人 |
Ceiba 課程網頁 |
http://ceiba.ntu.edu.tw/972DataStruAlgo |
課程簡介影片 |
|
核心能力關聯 |
核心能力與課程規劃關聯圖 |
課程大綱
|
為確保您我的權利,請尊重智慧財產權及不得非法影印
|
課程概述 |
此一課程特編針對生機系大學部同學設計, 旨於介紹多種常用之資料結構與相關演算法,增進修課學生的程式設計能力,以期未來能在不同領域實際應用。 |
課程目標 |
本課程將搭配C++程式編輯,介紹多種可使用的資料結構,引領學生了解現有演算法,解決實際問題。 |
課程要求 |
修過基本程式設計課程者佳(any language is fine, ext. C, C++, Java, Perl, ...) |
預期每週課後學習時數 |
|
Office Hours |
每週四 14:20~15:20 每週一 17:30~18:30 |
指定閱讀 |
|
參考書目 |
1. Robert Sedgewick, Algorithms in C++, Parts 1-4: Fundamentals, Data
Structure, Sorting, Searching (3rd Edition), Addison-Wesley Professional, 1998.
2. Elliot B. Koffman and Paul A. T. Wolfgang, Objects, Abstraction, Data
Structures and Design: Using C++, Wiley, 2005.
3. Sanjoy Dasgupta, Christos H. Papadimitriou, and Umesh Vazirani, Algorithms,
McGraw-Hill, 2006. (http://www.cs.berkeley.edu/~vazirani/algorithms.html)
|
評量方式 (僅供參考) |
No. |
項目 |
百分比 |
說明 |
1. |
期中考 |
30% |
|
2. |
期末考 |
30% |
|
3. |
作業 |
40% |
|
|
週次 |
日期 |
單元主題 |
第1週 |
02/17,02/19 |
Introduction |
第2週 |
02/24,02/26 |
An example problem: connectivity |
第3週 |
03/03,03/05 |
Principles of Algorithm Analysis, Basic recurrences |
第4週 |
03/10,03/12 |
Recurrences, examples of algorithm analysis |
第5週 |
03/17,03/19 |
Arrays, Linked Lists, Memory Allocation, Strings |
第6週 |
03/24,03/26 |
Lists, Stack, Queues |
第7週 |
03/31,04/02 |
ADT implementation (04/02 溫書假) |
第8週 |
04/07,04/09 |
Recursion, Divide and Conquer (4/9) 停課 |
第9週 |
04/14,04/16 |
Divide and Conquer |
第10週 |
04/21,04/23 |
(4/21) Midterm, (4/23) Divide and Conquer |
第11週 |
04/28,04/30 |
Dynamic programming, Tree Traversal, Recursion |
第12週 |
05/05,05/07 |
Binary trees |
第13週 |
05/12,05/14 |
Tree and graph traversal |
第14週 |
05/19,05/21 |
Sorting |
第15週 |
05/26,05/28 |
Priority queue and heapsort (05/28) 端午節 |
第16週 |
06/02,06/04 |
Greedy Algorithms, Minimum Spanning Trees |
第17週 |
06/09,06/11 |
Hashing |
第18週 |
06/16,06/18 |
(06/16) Final |
|