(科目代碼:955)
一、考核要求
本科目是電子通信、控制科學(xué)與工程等許多學(xué)科專業(yè)的基礎(chǔ)理論課程,為招收智能信息處理專業(yè)碩士生而設(shè)置的具有選拔功能的水平考試。它的主要目的是測試考生對數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)理論和應(yīng)用的掌握程度。要求考生具有分析和解決問題的能力,并能加以靈活應(yīng)用。
二、考核評價目標(biāo)
數(shù)據(jù)結(jié)構(gòu)考試的目標(biāo)在于考查考生對數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ)知識、基本理論和基本技能的掌握情況,考察考生綜合運(yùn)用所學(xué)知識分析和解決問題的能力。考生應(yīng)能:
1.系統(tǒng)地理解數(shù)據(jù)結(jié)構(gòu)的基本概念;
2.掌握各種基本數(shù)據(jù)結(jié)構(gòu)(線性結(jié)構(gòu)、樹形結(jié)構(gòu)、圖形結(jié)構(gòu))的定義、應(yīng)用和實現(xiàn);
3.掌握常用的兩種數(shù)據(jù)處理技術(shù):查找和排序;
4.掌握在不同的存儲結(jié)構(gòu)上實現(xiàn)算法的設(shè)計思想,從中體會和掌握選擇數(shù)據(jù)結(jié)構(gòu)的方法和算法設(shè)計的思考方式及技能,提高分析問題和解決問題的能力。
三、考核內(nèi)容
1.緒論
數(shù)據(jù)結(jié)構(gòu)的基本概念,包括邏輯結(jié)構(gòu)、物理結(jié)構(gòu)的基本概念、兩者之間的區(qū)別與聯(lián)系。
算法的基本概念和性質(zhì)。算法的復(fù)雜度的基本概念,并掌握對非遞歸代碼的復(fù)雜度計算的基本方法。
2.線性表
線性表的邏輯結(jié)構(gòu)定義。線性表的順序結(jié)構(gòu)實現(xiàn),以及順序結(jié)構(gòu)下的基本操作的實現(xiàn),
并能寫出操作代碼。線性表的鏈?zhǔn)浇Y(jié)構(gòu)實現(xiàn),以及鏈?zhǔn)浇Y(jié)構(gòu)下的基本操作的實現(xiàn),并能寫出操作代碼。能夠設(shè)計針對順序結(jié)構(gòu)和鏈?zhǔn)浇Y(jié)構(gòu)線性表的一般應(yīng)用問題的算法,并編寫算法代碼。
棧的基本概念、棧的性質(zhì)。棧的順序結(jié)構(gòu)和鏈?zhǔn)浇Y(jié)構(gòu)實現(xiàn),以及相應(yīng)的操作的實現(xiàn),能夠?qū)懗霾僮鞔a。棧與遞歸的關(guān)系,能夠編寫遞歸算法,能夠?qū)⑦f歸算法轉(zhuǎn)換為非遞歸形式。棧的應(yīng)用方法,能夠運(yùn)用棧解決相關(guān)問題,并編寫出算法代碼。隊列的基本概念和性質(zhì)。隊列的順序結(jié)構(gòu)和鏈?zhǔn)浇Y(jié)構(gòu)實現(xiàn),以及相應(yīng)操作的實現(xiàn),能夠?qū)懗霾僮鞔a。
3.串
串的概念,串與一般線性表的差別。串的基本操作的實現(xiàn)。串的樸素模式匹配算法。改進(jìn)KMP算法的思想和步驟,能夠手工計算出模式串的nextval向量。
4.?dāng)?shù)組、稀疏矩陣和廣義表
了解多維數(shù)組的概念,以及多維數(shù)組的一維數(shù)組實現(xiàn)。掌握多維下標(biāo)向一維下標(biāo)的換算算法,并能進(jìn)行手工計算。掌握稀疏矩陣的三元組結(jié)構(gòu)。了解廣義表的概念。
5.樹和二叉樹
樹的定義和性質(zhì)。
二叉樹的概念。二叉樹的基本性質(zhì),并能夠進(jìn)行描述和證明。掌握二叉樹的二叉鏈結(jié)構(gòu)的實現(xiàn)。掌握二叉樹的前序遍歷、中序遍歷、后序遍歷和層次遍歷規(guī)則,能夠手工寫出二叉樹的遍歷序。掌握二叉樹的遍歷性質(zhì),能夠根據(jù)前序+中序或中序+后序還原出二叉樹。掌握二叉樹的前序、中序和后序遞歸遍歷算法、前序、中序非遞歸遍歷算法,并能夠?qū)懗鏊惴ùa。
了解線索化二叉樹的概念、遍歷算法和線索化算法。
了解哈夫曼樹的概念。掌握哈夫曼算法的思想和步驟,能夠手工計算哈夫曼樹。了解哈夫曼編碼的概念,能夠手工計算哈夫曼編碼。
了解樹、森林和二叉樹的關(guān)系。
6.圖
了解圖的定義。掌握圖的鄰接矩陣、鄰接表的實現(xiàn)方法。掌握圖的深度優(yōu)先和廣度優(yōu)先遍歷算法,能夠手工計算圖的深度優(yōu)先遍歷序和廣度優(yōu)先遍歷序。掌握圖的連通性問題的求解算法,包括生成樹/森林計算、最小生成樹計算(Prim算法和Kruskal算法)。掌握關(guān)鍵路徑問題的求解算法,并能夠進(jìn)行手工計算。掌握單源起點最短路徑算法(Dijkstra算法)和任兩點間最短路徑算法(Floyd算法),并能夠進(jìn)行手工計算。
7.查找
掌握靜態(tài)表的概念和折半查找算法,并能夠進(jìn)行手工計算。掌握散列表的基本概念,散列函數(shù)的基本設(shè)計技巧。掌握二叉排序樹的概念,以及二叉排序樹上的查找、插入、刪除算法,并能夠進(jìn)行手工計算。掌握平衡二叉樹的概念,以及平衡二叉樹的插入和調(diào)整算法,并能夠進(jìn)行手工計算。了解B-、B+樹的概念,以及B-樹的插入和刪除算法。
8.內(nèi)排序
掌握簡單排序法(選擇排序、插入排序、交換排序)的算法思想和步驟,能夠?qū)懗雠判蜻^程。掌握快速排序的算法思想和步驟,能夠?qū)懗雠判蜻^程。掌握堆排序的算法思想和步驟,能夠?qū)懗雠判蜻^程(建堆過程、排序過程)。掌握歸并排序的算法思想和步驟,能夠?qū)懗雠判蜻^程。掌握基數(shù)排序的算法思想和步驟,能夠?qū)懗雠判蜻^程。
了解各種排序方法的特點,能夠針對特定問題背景選擇適當(dāng)?shù)呐判蚍椒ā?/P>
更多學(xué)歷考試信息請查看學(xué)歷考試網(wǎng)