友情提示:本站提供全國400多所高等院校招收碩士、博士研究生入學考試歷年考研真題、考博真題、答案,部分學校更新至2012年,2013年;均提供收費下載。 下載流程: 考研真題 點擊“考研試卷””下載; 考博真題 點擊“考博試卷庫” 下載
理論類課程大綱 課程名稱:數據結構 一、課程概況 所屬專業: 自動化 開課單位: 物理與電子信息學院 課程類型: 專業基礎課程 課程代碼: 0845140 開課學期: 2 學分: 2 學時: 34 核心課程: 是 擬使用教材: 鄧文華,《數據結構》,電子工業出版社,2011 年 國內(外)現有教材: 鄧文華,《數據結構》,電子工業出版社,2011 年 學習參考資料 [1] 嚴蔚敏,吳偉民 著,《數據結構(C 語言版) 》,清華大學出版社,2012 年 [2] William Ford,William Topp《數據結構 C++語言描述》,清華大學出版 社,1997 年 [3] Thomas H.Cormen 等著,殷建平 等譯《算法導論》,機械工業出版社, 2012 年 二、課程描述(300 字以內) 數據結構與算法是電子信息、自動化等專業的專業基礎課,也是程序設計方 面的一門綜合性基礎課程。學習本課程也是進行復雜程序設計的訓練過程,因此 要求學生能用算法語言書寫結構清晰正確的算法。并通過上機實驗,使學生受到 嚴格的基本技術訓練,以便為今后的工作實踐打好堅實基礎。課程的主要內容包 括棧、隊列、二叉樹、圖以及相關的算法。 三、課程目標 通過該課程的學習,學生將基本掌握數據結構和算法的設計分析技術, 提高程序設計的質量;根據所求解問題的性質選擇合理的數據結構并對時間空間 復雜性進行必要的控制。初步具備利用所學數據結構知識解決工程實際問題的能 力。 四、教學要求 授課教師將按照學校本科教學工作有關要求做好課程教學各項工作,嚴格按 照課表規定的時間、地點上課,不遲到、不早退,將根據本大綱要求,認真備課 完成教案與講稿編寫等各項課前準備工作;授課過程力求內容充實、概念準確、 思路清晰、詳略得當、邏輯性強、重難點突出,力戒平鋪直敘、照本宣科,同時 重視對學生的學習方法指導和課堂教學效果信息的反饋,實現教與學的雙向互 動;同時將結合課程目標要求,做好考核內容設計,并嚴格按照本大綱要求做好 出勤率統計、作業評價等各項工作。 學習是大學生自己的責任和義務,學生應根據課程大綱要求制定本門課程學 習計劃,加強學業管理,嚴格自我要求,提升自主學習能力,主動適應課程學習 要求。參與課堂教學活動不遲到、不早退,無正當理由不請假,上課認真聽講, 不做任何與課堂教學無關事宜,不使用手機,積極與授課教師進行教學互動,同 時利用課余時間做好預習、復習、課外書籍閱讀等工作,主動與同學開展合作學 習,認真完成任課教師布置的課程作業。 五、考核方式及要求 為實現課程教學目標,本門課程考核方式及要求為:出勤率及課程作業占 10%,點到不少于 3 次,其中缺席 1 次,按無成績計算;隨堂測驗 1 次,測驗成 績按 10%折算后計入總成績;實驗成績按 20%折算后計入總成績;期末考試為 卷面考試,占總成績的 60%。 六、課程內容 第一章:緒論 (授課時間:第二學期第 1 周) 教學目標:掌握數據結構的基本概念、算法時間復雜度以空間復雜度的分析方法。 教學重點:數據結構的定義;邏輯結構和存儲結構的概念;算法的概念。 教學難點:算法復雜度的表示方法;算法時間復雜度及空間復雜度分析。 學 時:課堂教學 2 學時,課外自主學習時間不少于 2 學時 教學方法:講授法、演示法 主要內容:(1)從問題到程序 (2)有關概念和術語 (3)算法及算法分析 (4)關于數據結構的學習 學習方法:小組討論、實驗操作 課后作業: 1. 什么是算法?一個好的算法要符合哪些要求? 2. 數據結構和算法的關系是什么? 第二章:線性表 (授課時間:第二學期第 2,3,4 周) 教學目標:通過本章教學,使學生理解順序表的定義、特點及主要操作,掌握基 本操作的實現算法。 教學重點:單鏈表的成員函數及其實現算法。 教學難點:單鏈表及雙鏈表的插入及刪除操作的指針移動方法。 學 時:課堂教學 6 學時,課外自主學習時間不少于 6 學時 教學方法:講授法、演示法 主要內容: (1) 線性表的邏輯結構 一、線性表的定義 二、線性表的基本操作 (2) 線性表順序存儲及其操作的實現 一、順序表 二、順序表基本操作的實現 三、順序表的其他操作 舉例 (3) 線性表的鏈式存儲及其操作的實現 一、單鏈表 二、單鏈表基本操作的實現 三、循環鏈表 四、雙 向鏈表 (4) 典型例題 學習方法:小組討論、實驗操作 課后作業: 1.編寫一算法輸出已知順序表 A 中元素的最大值和次大值。用非形 式算法描述,并編寫 c 語言程序。試分析所編程序的時間和空間復雜度。 第三章:棧和隊列 (授課時間:第二學期第 5,6,7 周) 教學目標:通過本章教學,使學生了解棧和隊列的存儲結構、基本運算和實現方 法,初步掌握棧和隊列的應用。 教學重點:棧與隊列的概念及實現。 教學難點:棧與遞歸;棧與隊列的實現及應用。 學 時:課堂教學 6 學時,課外自主學習時間不少于 6 學時 教學方法:講授法、演示法 主要內容: (1) 棧 一、棧的定義及其基本運算 二、棧的存儲結構和基本運算實現 三、棧的應用舉例 四、棧與遞歸的實現 (2) 隊列 一、隊列的定義及其基本運算 二、隊列的存儲結構和基本運算 實現 三、隊列的應用舉例 (3) 典型例題 學習方法:小組討論、實驗操作 課后作業: 1.利用棧,編寫一算法將已知數組中元素倒序排列,用非形式算法描 述,并編寫 c 語言程序。試分析所編程序的時間和空間復雜度。 第四章:串和數組 (授課時間:第二學期第 8,19 周) 教學目標:通過本章教學,使學生了解串和數組的基本概念,了解串的存儲結構 及其基本運算的實現,了解數組的邏輯結構和基本操作。 教學重點:串和數組的概念及應用。 教學難點:串基本運算的實現;多維數組。 學 時:課堂教學 4 學時,課外自主學習時間不少于 4 學時 教學方法:講授法、演示法 主要內容: (1) 串 一、串的基本概念 二、串的基本運算 三、串的存儲結構及其基本 運算的實現 (2) 數組 一、數組的邏輯結構和基本操作 二、數組的存儲結構 三、稀疏矩 陣 (3) 典型例題 學習方法:小組討論、實驗操作 第五章:樹與二叉樹 (授課時間:第二學期第 10,11,12 周) 教學目標:通過本章教學,使學生了解樹與二叉樹的概念,掌握樹與二叉樹的基 本操作及其實現。 教學重點:樹與二叉樹的概念、遍歷及應用。 教學難點:二叉樹的遍歷;最優二叉樹。 學 時:課堂教學 6 學時,課外自主學習時間不少于 6 學時 教學方法:講授法、演示法 主要內容: (1) 樹的概念與基本操作 (2) 二叉樹 一、二叉樹的基本概念 二、二叉樹的主要性質 三、二叉樹的存儲 結構與基本操作 四、二叉樹的遍歷 (3) 樹與森林 (4) 最優二叉樹 (5) 典型例題 學習方法:小組討論、實驗操作 第六章:圖 (授課時間:第二學期第 13,14,15 周) 教學目標:通過本章教學,使學生掌握圖的基本概念,掌握圖的存儲結構和圖的 遍歷,初步掌握圖的應用。 教學重點:圖的概念、遍歷及應用。 教學難點:鄰接矩陣和鄰接表;圖廣度優先和深度優先遍歷;最小生成樹;最短 路徑算法。 學 時:課堂教學 6 學時,課外自主學習時間不少于 6 學時 教學方法:講授法、演示法 主要內容: (1) 圖的基本概念 (2) 圖的存儲結構 一、鄰接矩陣 二、鄰接表 (3) 圖的遍歷 一、深度優先遍歷 二、廣度優先遍歷 (4) 圖的應用 一、最小生成樹 二、最短路徑 三、拓撲排序 學習方法:小組討論、實驗操作 第七章:查找 (授課時間:第二學期第 16 周) 教學目標:通過本章教學,使學生了解查找的基本概念與術語,掌握常用查找算 法,了解哈希表與哈希方法。 教學重點:常用查找算法的比較,折半查找和二叉排序樹的查找。 教學難點:二叉排序樹的表示、查找、插入、刪除算法及其性能分析方法。 學 時:課堂教學 2 學時,課外自主學習時間不少于 2 學時 教學方法:講授法、演示法 主要內容: (1) 基本概念與術語 (2) 靜態查找表 一、靜態查找表結構 二、順序查找 三、有序表的折半查找 四、分 塊查找 (3) 動態查找表 (4) 哈希表 (5) 典型例題 學習方法:小組討論、實驗操作 第八章:排序 (授課時間:第二學期第 17 周) 教學目標:通過本章教學,使學生掌握排序的基本概念,掌握三種簡單的排序方 法。 教學重點:常用排序算法的分析、特點及比較。 教學難點:插入排序、冒泡排序和選擇排序等各種排序算法及其性能分析方法。 學 時:課堂教學 2 學時,課外自主學習時間不少于 2 學時 教學方法:講授法、演示法 主要內容: (1) 基本概念 (2) 三種簡單的排序方法 一、直接插入排序 二、冒泡排序 三、簡單選擇排序 (3) 希爾排序 (4) 快速排序 (5) 堆排序 (6) 歸并排序 (7) 各種排序方法的比較與討論 學習方法:小組討論、實驗操作
免責聲明:本文系轉載自網絡,如有侵犯,請聯系我們立即刪除,另:本文僅代表作者個人觀點,與本網站無關。其原創性以及文中陳述文字和內容未經本站證實,對本文以及其中全部或者部分內容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,并請自行核實相關內容。
|