《數(shù)據(jù)結(jié)構(gòu)》課程考試大綱
課程名稱:數(shù)據(jù)結(jié)構(gòu) (Data Structure)
適用專業(yè):計(jì)算機(jī)相關(guān)專業(yè)
使用教材:嚴(yán)蔚敏,數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版),清華大學(xué)出版社
一、該課程的性質(zhì)、目的及任務(wù)
“數(shù)據(jù)結(jié)構(gòu)”是一門專業(yè)基礎(chǔ)課程,目的是培養(yǎng)學(xué)生的數(shù)據(jù)抽象能力,學(xué)會(huì)分析程序所處理的數(shù)據(jù)結(jié)構(gòu)及其特性,為程序處理的數(shù)據(jù)選擇合適的邏輯結(jié)構(gòu)、存儲(chǔ)結(jié)構(gòu)及相應(yīng)算法,掌握算法的時(shí)間和空間復(fù)雜度的分析技術(shù)。
二、考試內(nèi)容及要求
1、緒論:熟悉各名詞、術(shù)語(yǔ)的含義,掌握基本概念,特別是數(shù)據(jù)的邏輯結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu)之間的關(guān)系;了解抽象數(shù)據(jù)類型的定義、表示和實(shí)現(xiàn)方法;熟悉類C語(yǔ)言的書寫規(guī)范,特別要注意值調(diào)用和引用調(diào)用的區(qū)別,輸入、輸出的方式以及錯(cuò)誤處理方式;理解算法五個(gè)要素的確切含義;掌握計(jì)算語(yǔ)句頻度和估算算法時(shí)間復(fù)雜度的方法。
2、線性表:線性表的邏輯結(jié)構(gòu)定義、抽象數(shù)據(jù)類型定義和各種存儲(chǔ)結(jié)構(gòu)的描述方法;在線性表的兩類存儲(chǔ)結(jié)構(gòu)(順序存 儲(chǔ)和鏈?zhǔn)酱鎯?chǔ))上實(shí)現(xiàn)基本操作;一元多項(xiàng)式的抽象數(shù)據(jù)類型定義、表示及加法的實(shí)現(xiàn)。
3、棧和隊(duì)列:棧和隊(duì)列的結(jié)構(gòu)特性;在兩種存儲(chǔ)結(jié)構(gòu)上如何實(shí)現(xiàn)棧和隊(duì)列的基本操作,棧和隊(duì)列在程序設(shè)計(jì)中的應(yīng)用,利用棧去模擬遞歸程序的運(yùn)行。
4、串: 串的數(shù)據(jù)類型定義;串的三種存儲(chǔ)表示:定長(zhǎng)順序存儲(chǔ)結(jié)構(gòu)、塊鏈存儲(chǔ)結(jié)構(gòu)和堆分配存儲(chǔ)結(jié)構(gòu);串的各種基本操作的實(shí)現(xiàn)及應(yīng)用;串的模式匹配算法。
5、數(shù)組和廣義表: 數(shù)組的類型定義和表示方法;特殊矩陣和稀疏矩陣的壓縮存儲(chǔ)方法及運(yùn)算的實(shí)現(xiàn);廣義表的邏輯結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu)、m元多項(xiàng)式的廣義表表示以及廣義表的操作的遞歸算法舉例 。
6、樹和二叉樹: 二叉樹的定義、性質(zhì)和存儲(chǔ)結(jié)構(gòu);二叉樹的遍歷和線索化以及遍歷算法的各種描述形式;樹和森林的定義、存儲(chǔ)結(jié)構(gòu)、樹和森林與二叉樹的轉(zhuǎn)換、遍歷;樹的多種應(yīng)用;平衡二叉樹、平衡二叉排序樹的 定義、性質(zhì)及其應(yīng)用。
7、圖: 圖的定義和術(shù)語(yǔ);圖的四種存儲(chǔ)結(jié)構(gòu):數(shù)組表示法、鄰接表、十字鏈表和鄰接多重表;圖的兩種遍歷策略:深度優(yōu)先搜索和廣度優(yōu)先搜索;圖的連通性:連通分量和最小生成樹;拓?fù)渑判蚝完P(guān)鍵路徑;兩類求最短路徑問(wèn)題的算法。
8、查找:討論查找表(包括靜態(tài)查找表和動(dòng)態(tài)查找表)的各種實(shí)現(xiàn)方法:順序表、有序表、樹表和哈希表;關(guān)于衡量查找表的主要操作——查找效率的平均查找長(zhǎng)度。
9、內(nèi)部排序:討論比較各種內(nèi)部排序方法,插入排序、交換排序、選擇排序、歸并排序和基數(shù)排序的基本思想、算法特點(diǎn)、排序過(guò)程以及它們的時(shí)間復(fù)雜度。在每類排序方法中,從簡(jiǎn)單方法入手,重點(diǎn)掌握性能較高效方法(插入排序類中的希爾排序、交換排序類中的快速排序、選擇排序類中的堆排序等)。
10、外部排序: 實(shí)現(xiàn)外部排序的基本方法;為減少平衡歸并排序中所需進(jìn)行的外存讀/寫次數(shù)可采取的措施:利用敗者樹實(shí)現(xiàn)多路歸并,通過(guò)置換-選擇排序產(chǎn)生初始?xì)w并段,并對(duì)所得長(zhǎng)度不等的歸并段構(gòu)造最佳歸并樹。
“數(shù)據(jù)結(jié)構(gòu)”要求學(xué)生掌握基本概念、重要數(shù)據(jù)結(jié)構(gòu)、基本算法,掌握各種數(shù)據(jù)結(jié)構(gòu)的邏輯結(jié)構(gòu)、存儲(chǔ)結(jié)構(gòu)和實(shí)現(xiàn)算法。根據(jù)當(dāng)前計(jì)算機(jī)的應(yīng)用發(fā)展舉例說(shuō)明數(shù)據(jù)結(jié)構(gòu)的描述及應(yīng)用的實(shí)現(xiàn)算法。
三、考試方式
采用筆試(閉卷)方式考試,考試時(shí)長(zhǎng)100分鐘。
四、試卷結(jié)構(gòu)及題型
題型:填空題(10%)、單選題(10%)、判斷題(10%)、簡(jiǎn)答題(20%)、程序填空題(20%)、 程序設(shè)計(jì)題(30%)。