《數(shù)據(jù)結(jié)構(gòu)》課程教學(xué)大綱
課程名稱(中文/英文):數(shù)據(jù)結(jié)構(gòu)(Data Structure)
課程編號(hào):9631214
課程類別:專業(yè)必修課
適用專業(yè):信息管理與信息系統(tǒng)、計(jì)算機(jī)科學(xué)與技術(shù)(計(jì)算機(jī)應(yīng)用,、軟件工程,、網(wǎng)絡(luò)工程)
總學(xué)時(shí)數(shù):90,其中講授:54 學(xué)時(shí),;上機(jī): 0學(xué)時(shí),;實(shí)驗(yàn):36 學(xué)時(shí);課外: 0 學(xué)時(shí)
制訂單位:華南師范大學(xué)增城學(xué)院計(jì)算機(jī)系
一,、教學(xué)大綱說明
1.課程的地位,、作用和任務(wù)
本課程是計(jì)算機(jī)專業(yè)的重要基礎(chǔ)技術(shù)課程,通過討論數(shù)據(jù)的各種邏輯結(jié)構(gòu),、物理結(jié)構(gòu)以及相關(guān)算法,,使學(xué)生能根據(jù)實(shí)際問題的需要選擇合適的數(shù)據(jù)結(jié)構(gòu)和設(shè)計(jì)算法,并為學(xué)習(xí)數(shù)據(jù)庫,、操作系統(tǒng)等后繼課程打下基礎(chǔ),。
2.課程教學(xué)的目的和要求
本課程的教學(xué)要求是:要求學(xué)生學(xué)會(huì)分析要求計(jì)算機(jī)加工的數(shù)據(jù)對(duì)象的特性,以便選擇適當(dāng)?shù)臄?shù)據(jù)邏輯結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu)以及相應(yīng)的算法,,并初步掌握算法的時(shí)間分析和空間分析的技巧。另一方面,,學(xué)習(xí)本課程的過程也是進(jìn)行復(fù)雜程序設(shè)計(jì)的訓(xùn)練過程,,訓(xùn)練學(xué)生應(yīng)用各種典型算法進(jìn)行具體應(yīng)用問題的程序設(shè)計(jì),這包括程序中變量設(shè)計(jì),、函數(shù)中參數(shù)設(shè)計(jì),、程序的書寫格式等方面的訓(xùn)練,要求學(xué)生書寫的程序結(jié)構(gòu)清楚,,正確易讀,。
3.課程教學(xué)改革設(shè)想
本課程以培養(yǎng)學(xué)生實(shí)踐能力為中心,,在教學(xué)中針對(duì)不同知識(shí)點(diǎn)采取不同教學(xué)策略,注重培養(yǎng)學(xué)生解決實(shí)際問題的能力,,在實(shí)踐課中添加大量練習(xí),。并開設(shè)了《數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)》課程,培養(yǎng)學(xué)生解決綜合問題的能力,。
4.課程與其它課程的聯(lián)系
本課程為專業(yè)基礎(chǔ)課,,在一門語言課作為先行課的基礎(chǔ)上,作為其他專業(yè)主干課程的先行課,。
5.教材與教學(xué)參考書
1)《數(shù)據(jù)結(jié)構(gòu)》(C語言版本) 嚴(yán)蔚敏 編 清華大學(xué)出版社
2)《數(shù)據(jù)結(jié)構(gòu)》中國(guó)輕工業(yè)出版社
3)《使用數(shù)據(jù)結(jié)構(gòu)題解》 清華大學(xué)出版社 徐士良 編著
6.考試改革設(shè)想及成績(jī)計(jì)算方法
在考試題目類型的選擇上,,加大對(duì)主觀知識(shí)考核的比例,在傳統(tǒng)題型的分值上做調(diào)整,,并增加與專業(yè),、生活有關(guān)的應(yīng)用題。期末成績(jī)由以下幾方面組成:期末筆試,,期末機(jī)試,平時(shí)作業(yè)和上機(jī)作業(yè)(包括獨(dú)立完成情況和理解情況),。
二、課程的教學(xué)內(nèi)容,、重點(diǎn)和難點(diǎn)(按章節(jié)填寫)
第一章 緒論
1,、掌握各種基本術(shù)語的含義、區(qū)別與聯(lián)系,。
2,、掌握基本的數(shù)據(jù)結(jié)構(gòu)類型和它們的主要特點(diǎn),并能舉例,。
3,、掌握計(jì)算語句頻度和估算算法時(shí)間復(fù)雜度、空間復(fù)雜度的方法,。
第二章 線性表
1,、掌握線性表的邏輯結(jié)構(gòu)特性,。
2、熟練掌握線性表的兩種不同存儲(chǔ)結(jié)構(gòu)(順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu))的描述方法和各種基本操作的算法,。
3,、掌握單鏈表和循環(huán)鏈表。
第三章 棧和隊(duì)列
1,、了解棧和隊(duì)列的結(jié)構(gòu)特點(diǎn)及存儲(chǔ)結(jié)構(gòu),。
2,、掌握棧和隊(duì)列在兩種存儲(chǔ)結(jié)構(gòu)下實(shí)現(xiàn)基本操作的算法。
3,、熟練掌握棧的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)和循環(huán)隊(duì)列,。
第四章 數(shù)組和串
1、了解數(shù)組基本概念,。
2,、了解串及相關(guān)操作。
第五章 樹
1,、掌握樹的定義,、各個(gè)基本術(shù)語以及樹的各種存儲(chǔ)結(jié)構(gòu)。
2,、了解樹,、森林與二叉樹的轉(zhuǎn)換方法。
3,、了解樹和森林的遍歷,。
第六章 二叉樹及應(yīng)用
1、掌握二叉樹的基本概念,、性質(zhì),、各種存儲(chǔ)結(jié)構(gòu)的特點(diǎn)及其基本操作的實(shí)現(xiàn)。
2,、熟練掌握二叉樹各種遍歷算法及其應(yīng)用,。
3、掌握如何建立哈夫曼樹,,了解哈夫曼樹在編碼,、判定問題中的應(yīng)用。
第七章 圖
1,、了解圖的基本術(shù)語,。
2、掌握?qǐng)D的各種存儲(chǔ)結(jié)構(gòu)及使用原則
3,、掌握?qǐng)D的深度優(yōu)先搜索和廣度優(yōu)先搜索算法,。
4、掌握?qǐng)D生成最小生成樹的方法,,知道求最短路徑的方法,。
5、拓?fù)渑判虻膽?yīng)用實(shí)例和排序過程中棧的變化
6,、了解網(wǎng)絡(luò)中的關(guān)鍵路徑及其求解。
7,、了解圖的若干應(yīng)用算法,。
第八章 查找
1,、了解查找的基本概念。
2,、熟練掌握順序查找,、二分查找和分塊查找的特點(diǎn)及算法。,、
3,、掌握二叉排序樹的構(gòu)造,查找及刪除算法,。
4,、了解散列表的構(gòu)造方法和處理沖突的基本方法。
5,、掌握查找成功時(shí)平均查找長(zhǎng)度的計(jì)算方法,。
第九章 排序
1、了解排序的基本概念,。
2,、熟練掌握各種內(nèi)部排序方法的算法。
3,、熟悉各種內(nèi)部排序方法的特點(diǎn),、性能,能根據(jù)不同的實(shí)際情況比較,、分析,、選用不同的內(nèi)部排序方法。
4,、了解外部排序的概念和特點(diǎn),。
三、學(xué)時(shí)分配
教學(xué)內(nèi)容 | 各教學(xué)環(huán)節(jié)學(xué)時(shí)分配 | 備注 | |||||||
章節(jié) | 教學(xué)基本內(nèi)容 | 講授 | 實(shí)驗(yàn) | 討論 | 習(xí)題 | 實(shí)踐 | 其它 | 小計(jì) | |
第一章 | 緒 論 | 2 | 2 | ||||||
第二章 | 線性表 | 8 | 4 | 8 | |||||
第三章 | 棧和隊(duì)列 | 6 | 6 | 10 | |||||
第四章 | 數(shù)組和串 | 3 | 3 | ||||||
第五章 | 樹 | 5 | 0 | 7 | |||||
第六章 | 二叉樹及應(yīng)用 | 11 | 8 | 17 | |||||
第七章 | 圖 | 7 | 6 | 13 | |||||
第八章 | 查 找 | 6 | 6 | 10 | |||||
第九章 | 排 序 | 6 | 6 | 10 | |||||
合計(jì) | 54 | 36 | 80 |