科目代碼、名稱(chēng): 843數(shù)據(jù)結(jié)構(gòu)
專(zhuān)業(yè)類(lèi)別:√學(xué)術(shù)型 □專(zhuān)業(yè)學(xué)位
適用專(zhuān)業(yè): 081200計(jì)算機(jī)科學(xué)與技術(shù),083500軟件工程
一、 基本內(nèi)容
1. 數(shù)據(jù)類(lèi)型和數(shù)據(jù)結(jié)構(gòu)的基本概念
邏輯結(jié)構(gòu)和物理存儲(chǔ)結(jié)構(gòu);數(shù)據(jù)結(jié)構(gòu)的抽象數(shù)據(jù)類(lèi)型表示;數(shù)據(jù)結(jié)構(gòu)的應(yīng)用
2.線性表存儲(chǔ)結(jié)構(gòu)及實(shí)現(xiàn)
動(dòng)態(tài)數(shù)組的空間申請(qǐng)和空間管理;動(dòng)態(tài)數(shù)組的聲明和實(shí)現(xiàn);
鏈表的基本結(jié)構(gòu)和創(chuàng)建方式;鏈表的遍歷;鏈表的插入和刪除;鏈表的歸并和拆分;鏈表應(yīng)用;
3.棧和隊(duì)列
棧的基本結(jié)構(gòu)和創(chuàng)建方式;棧的基本屬性和基本操作;棧的應(yīng)用;中綴轉(zhuǎn)后綴算法;后綴表達(dá)式計(jì)算
隊(duì)列的基本結(jié)構(gòu)和創(chuàng)建方式;隊(duì)列的基本屬性和基本操作;隊(duì)列的應(yīng)用;
4.雙向鏈表
雙向鏈表的基本結(jié)構(gòu)和創(chuàng)建方式;雙向鏈表的遍歷、插入和刪除方法;雙向鏈表的應(yīng)用
5. 遞歸算法
遞歸算法的基本概念和實(shí)現(xiàn)方法;數(shù)制轉(zhuǎn)換、漢諾塔
6.二叉樹(shù)
二叉樹(shù)的基本概念和表示方法;二叉樹(shù)的創(chuàng)建、遞歸遍歷方法;二叉樹(shù)的非遞歸遍歷方法;二叉搜索樹(shù)的創(chuàng)建、插入、刪除方法;二叉平衡樹(shù)及平衡的調(diào)整方法
7.堆
完全二叉樹(shù)結(jié)構(gòu);堆的創(chuàng)建方法、堆調(diào)整;堆的插入、刪除方法;優(yōu)先隊(duì)列概念;堆的應(yīng)用-優(yōu)先隊(duì)列
8.霍夫曼樹(shù)
編碼壓縮方法;霍夫曼編碼;霍夫曼樹(shù)創(chuàng)建方法
9.復(fù)雜樹(shù)結(jié)構(gòu)
2-3-4樹(shù)創(chuàng)建方法;B樹(shù)創(chuàng)建、插入和刪除方法
10.查找算法
順序查找算法及時(shí)間復(fù)雜度;折半查找算法及時(shí)間復(fù)雜度;哈希表構(gòu)造方法(開(kāi)散列、閉散列);哈希查找算法及沖突解決方法
11.排序算法
簡(jiǎn)單排序算法及時(shí)間復(fù)雜度(選擇排序、交換排序、冒泡排序、插入排序);高級(jí)排序算法及時(shí)間復(fù)雜度(快速排序、堆排序、歸并排序、基數(shù)排序);理解算法的最好排序時(shí)間、最壞排序時(shí)間及平均排序時(shí)間
12.圖
圖的基本結(jié)構(gòu)(無(wú)向圖和有向圖);圖的基本表示方法;圖的基本遍歷算法(深度、廣度遍歷)、插入和刪除算法;最短路徑算法;最小生成樹(shù)算法
二、考試要求(包括考試時(shí)間、總分、考試方式、題型、分?jǐn)?shù)比例等)
考試時(shí)間:180分鐘
總分:150分
考試方式:閉卷筆試
題型、分?jǐn)?shù)比例:簡(jiǎn)答或選擇(約20%)程序閱讀(約20%)、綜合和程序設(shè)計(jì)題(約60%)
三、主要參考書(shū)目
數(shù)據(jù)結(jié)構(gòu)與算法分析-C++語(yǔ)言描述(第2版),Larry Nyhoff著,黃達(dá)明等譯,清華大學(xué)出版社出版, 2006年