課程名稱:資料結構 (3學分/3學時)
一、課程總學習目標:
資料結構課程目的在教授學生組織和操作數據的基本概念和技能。學生將掌握各種資料結構的基本操作,分析演算法複雜度並應用於問題解決。課程重點在於培養學生的問題解決能力,完成課程後,學生將具備深入理解和應用資料結構的能力。
二、各單元學習目標:
單元1:演算法導論。
本單元將介紹演算法的設計、分析和應用。課程目標包括:教授常見的演算法設計技巧,如遞迴法(recursive method)、貪婪法(greedy method)、個別擊破法(divide and conquer)與動態程式法(dynamic programming);引導學生學習演算法的時間和空間複雜度分析方法,以評估演算法效率;培養學生將演算法應用於解決實際問題的能力,例如排序、圖形演算法等。完成課程後,學生將具備理解、分析和應用演算法的能力。
單元2:陣列。
本單元課程目標包括:理解陣列的基本概念和特性,包括索引、存取和更新操作;掌握陣列的常見應用,如資料存儲、排序和搜尋;了解動態陣列的實現和操作,以及其與靜態陣列的區別;學習如何解決與陣列相關的實際問題,理解陣列操作的時間和空間複雜度,並學會進行效能分析和優化。完成課程後,學生將具備理解和應用陣列的能力。
單元3:鏈結串列。
本單元課程目標包括:理解鏈結串列的概念和特性,包括節點(node)、指標(pointer)和連接操作;掌握鏈結串列的基本操作,如插入、刪除和搜尋;了解不同類型的鏈結串列,包括單向、雙向和循環鏈結串列,以及它們的應用場合。完成課程後,學生將具備理解和應用鏈結串列的能力。
單元4:堆疊與佇列。
本單元課程目標包括:理解堆疊和佇列的基本概念、特性和操作,包括進出原則和常見應用場景;掌握堆疊和佇列的基本操作,如新增資料、刪除資料並學習如何解決與堆疊和佇列相關的實際問題。完成課程後,學生將具備理解和應用堆疊和佇列的能力。
單元5:樹狀結構。
本單元課程目標包括:理解樹狀結構的基本概念和特性,包括節點(node)、樹根(root)、父子關係和樹葉節點(leaf node);掌握樹狀結構的常見類型,如二元樹(binary tree)、二元搜尋樹(binary search tree)等;學習樹的追蹤演算法,包括前序、中序與後序追蹤;了解樹狀結構的操作,如插入、刪除和搜尋,並學會分析時間複雜度。完成課程後,學生將具備理解和應用樹狀結構的能力。
單元6:圖。
本單元課程目標包括:理解圖的基本概念,包括節點(頂點)和邊,以及不同類型的圖(有向圖、無向圖、加權圖等);掌握圖的表示方法,如相鄰矩陣和鄰接表,以及它們的適用場景和效能分析;學習圖的常見算法,如深度優先搜索(DFS)、廣度優先搜索(BFS)、最短路徑算法等,並了解它們的運作原理和應用;探討圖的應用,如路徑規劃等實際場景。完成課程後,學生將具備理解和應用圖的能力。
單元7:排序。
本單元課程目標包括:理解各種排序演算法的原理,如氣泡排序、選擇排序、插入排序、快速排序、合併排序等;學習排序演算法的實現和操作,並了解它們的時間和空間複雜度。完成課程後,學生將具備深入理解和應用各種排序算法的能力。
單元8:搜尋。
本單元課程目標包括:理解各種搜尋演算法的原理,包括線性搜尋、二元搜尋、雜湊搜尋等;學習搜尋演算法的實現和操作,並了解時間和空間複雜度;探討搜尋演算法的優化策略,如二元搜尋法等。完成課程後,學生將具備理解和應用各種搜尋算法的能力。
三、學分數:3
資料結構--課程行事曆
週次 |
上課日期 |
教 學 與 作 業 進 度 |
1 |
113/09/11 |
單元1: 演算法導論 (part1) 1-1 演算法基本觀念 1-2 演算法分析 包含以下五項學習活動: (1)課前預習教材。 (2)上實體課程。 (3)課後複習教材。 (4)作業:繳交期限為上課後一周內(下次上課前)完成線上繳交。 (5)課程討論板--參與討論。 |
2 |
113/09/18 |
單元1: 演算法導論 (part2) 1-3 常用程式設計方法 1-4 發展程式的方法 包含以下七項學習活動: (1)課前預習教材。 (2)上實體課程。 (3)課後複習教材。 (4)作業:繳交期限為上課後一周內(下次上課前)完成線上繳交。 (5)作業互評:請在上課後一周內(下次上課前)完成評定其他同學上周繳交之作業共5份(由系統隨機安排)。 (6)單元測驗:請在上課後一周內(下次上課前)完成測驗。 (7)課程討論板--參與討論。 |
3 |
113/09/25 |
單元2: 陣列 2-1 基本觀念 2-2 陣列儲存方法 2-3 陣列求址公式 2-4 特殊矩陣表示法 包含以下六項學習活動: (1)課前預習教材。 (2)上實體課程。 (3)課後複習教材。 (4)作業:繳交期限為上課後一周內(下次上課前)完成線上繳交。 (5)作業互評:請在上課後一周內(下次上課前)完成評定其他同學上周繳交之作業共5份(由系統隨機安排)。 (6)課程討論板--參與討論。 |
4 |
113/10/02 |
單元3: 鏈結串列(part1) 包含以下七項學習活動: (1)課前預習教材。 (2)上實體課程。 (3)課後複習教材。 (4)作業:繳交期限為上課後一周內(下次上課前)完成線上繳交。(本周作業為群組作業) (5)作業互評:請在上課後一周內(下次上課前)完成評定其他同學上周繳交之作業共5份(由系統隨機安排)。 (6)單元測驗:請在上課後一周內(下次上課前)完成測驗。 (7)課程討論板--參與討論。 |
5 |
113/10/09 |
單元3: 鏈結串列(part2) 包含以下六項學習活動: (1)課前預習教材。 (2)上實體課程。 (3)課後複習教材。 (4)作業:繳交期限為上課後一周內(下次上課前)完成線上繳交。 (5)作業互評:請在上課後一周內(下次上課前)完成評定其他同學上周繳交之作業共5份(由系統隨機安排)。 (6)課程討論板--參與討論。 |
6 |
113/10/16 |
單元4: 堆疊與佇列(part1) 包含以下七項學習活動: (1)課前預習教材。 (2)上實體課程。 (3)課後複習教材。 (4)作業:繳交期限為上課後一周內(下次上課前)完成線上繳交。 (5)作業互評:請在上課後一周內(下次上課前)完成評定其他同學上周繳交之作業共5份(由系統隨機安排)。 (6)單元測驗:請在上課後一周內(下次上課前)完成測驗。 (7)課程討論板--參與討論。 |
7 |
113/10/23 |
單元4: 堆疊與佇列(part2) 包含以下六項學習活動: (1)課前預習教材。 (2)上實體課程。 (3)課後複習教材。 (4)作業:繳交期限為上課後一周內(下次上課前)完成線上繳交。 (5)作業互評:請在上課後一周內(下次上課前)完成評定其他同學上周繳交之作業共5份(由系統隨機安排)。 (6)課程討論板--參與討論。 |
8 |
113/10/30 |
單元5: 樹狀結構(part1) 包含以下七項學習活動: (1)課前預習教材。 (2)上實體課程。 (3)課後複習教材。 (4)作業:繳交期限為上課後一周內(下次上課前)完成線上繳交。 (5)作業互評:請在上課後一周內(下次上課前)完成評定其他同學上周繳交之作業共5份(由系統隨機安排)。 (6)單元測驗:請在上課後一周內(下次上課前)完成測驗。 (7)課程討論板--參與討論。 |
9 |
113/11/06 |
期中考試 包含以下二項學習活動: (1)複習第一周至第八周上課內容。 (2)課程討論板--參與討論。 |
10 |
113/11/13 |
單元5: 樹狀結構(part2) 包含以下五項學習活動: (1)課前預習教材。 (2)上實體課程。 (3)課後複習教材。 (4)作業:繳交期限為上課後一周內(下次上課前)完成線上繳交。 (5)課程討論板--參與討論。 |
11 |
113/11/20 |
單元5: 樹狀結構 (part3) 包含以下六項學習活動: (1)課前預習教材。 (2)上實體課程。 (3)課後複習教材。 (4)作業:繳交期限為上課後一周內(下次上課前)完成線上繳交。(本周作業為群組作業) (5)作業互評:請在上課後一周內(下次上課前)完成評定其他同學上周繳交之作業共5份(由系統隨機安排)。 (6)課程討論板--參與討論。 |
12 |
113/11/27 |
單元6: 圖 (part1) 包含以下七項學習活動: (1)課前預習教材。 (2)上實體課程。 (3)課後複習教材。 (4)作業:繳交期限為上課後一周內(下次上課前)完成線上繳交。(本周作業為群組作業) (5)作業互評:請在上課後一周內(下次上課前)完成評定其他同學上周繳交之作業共5份(由系統隨機安排)。 (6)單元測驗:請在上課後一周內(下次上課前)完成測驗。 (7)課程討論板--參與討論。 |
13 |
113/12/04 |
單元6: 圖 (part2) 包含以下六項學習活動: (1)課前預習教材。 (2)上實體課程。 (3)課後複習教材。 (4)作業:繳交期限為上課後一周內(下次上課前)完成線上繳交。 (5)作業互評:請在上課後一周內(下次上課前)完成評定其他同學上周繳交之作業共5份(由系統隨機安排)。 (6)課程討論板--參與討論。 |
14 |
113/12/11 |
單元7: 排序 (part1) 包含以下六項學習活動: (1)課前預習教材。 (2)上實體課程。 (3)課後複習教材。 (4)作業:繳交期限為上課後一周內(下次上課前)完成線上繳交。 (5)作業互評:請在上課後一周內(下次上課前)完成評定其他同學上周繳交之作業共5份(由系統隨機安排)。 (6)課程討論板--參與討論。 |
15 |
113/12/18 |
單元7: 排序 (part2) 包含以下七項學習活動: (1)課前預習教材。 (2)上實體課程。 (3)課後複習教材。 (4)作業:繳交期限為上課後一周內(下次上課前)完成線上繳交。 (5)作業互評:請在上課後一周內(下次上課前)完成評定其他同學上周繳交之作業共5份(由系統隨機安排)。 (6)單元測驗:請在上課後一周內(下次上課前)完成測驗。 (7)課程討論板--參與討論。 |
16 |
113/12/25 |
單元8: 搜尋 (part1) 包含以下六項學習活動: (1)課前預習教材。 (2)上實體課程。 (3)課後複習教材。 (4)作業:繳交期限為上課後一周內(下次上課前)完成線上繳交。 (5)作業互評:請在上課後一周內(下次上課前)完成評定其他同學上周繳交之作業共5份(由系統隨機安排)。 (6)課程討論板--參與討論。 |
17 |
114/01/01 |
單元8: 搜尋 (part2) 包含以下七項學習活動: (1)課前預習教材。 (2)上非同步線上課程(國定假日)。 (3)課後複習教材。 (4)作業:繳交期限為上課後一周內(下次上課前)完成線上繳交。 (5)作業互評:請在上課後一周內(下次上課前)完成評定其他同學上周繳交之作業共5份(由系統隨機安排)。 (6)單元測驗:請在上課後一周內(下次上課前)完成測驗。 (7)課程討論板--參與討論。 |
18 |
114/01/08 |
期末考試 包含以下二項學習活動: (1)複習第一周至第十七周上課內容。 (2)課程討論板--參與討論。 |