2016年考研專業(yè)課計算機數(shù)據(jù)結(jié)構(gòu)大綱分析
【考研派 okaoyan.com】 為大家提供2016年考研專業(yè)課計算機數(shù)據(jù)結(jié)構(gòu)大綱分析,更多考研資訊請關(guān)注我們網(wǎng)站的更新!敬請收藏本站。
考研的道路是漫長的,是無比艱辛的??佳械娜舜蠖鄶?shù)是焦躁的,迷茫的,也是孤獨的。特別是身邊沒有研友陪伴的時候那種孤獨感只有自己才能體會。
一、 數(shù)據(jù)結(jié)構(gòu)考查目標
1. 掌握數(shù)據(jù)結(jié)構(gòu)的基本概念、基本原理和基本方法。
2. 掌握數(shù)據(jù)的邏輯結(jié)構(gòu)、存儲結(jié)構(gòu)及其基本操作的實現(xiàn),能夠?qū)λ惴ㄟM行基本的時間復雜度與空間復雜度的分析。
3. 能夠運用數(shù)據(jù)結(jié)構(gòu)的基本原理和方法進行問題的分析和求解,具備采用C或C++語言設(shè)計與實現(xiàn)算法的能力。
二、數(shù)據(jù)結(jié)構(gòu)考點解析
今天我們首先來解析一下計算統(tǒng)考大綱數(shù)據(jù)結(jié)構(gòu)部分及其相關(guān)知識點。數(shù)據(jù)結(jié)構(gòu)占了45分,和計算機組成原理部分同一個比重,在以往各年計算機專業(yè)的研究生入學考試中,幾乎沒有學校不考查數(shù)據(jù)結(jié)構(gòu)的內(nèi)容,而且絕大部分考試中,數(shù)據(jù)結(jié)構(gòu)這一門都占據(jù)了重要的地位,這足以體現(xiàn)計算機專業(yè)研究生選拔對數(shù)據(jù)結(jié)構(gòu)課程的要求之重。
2016年的統(tǒng)考大綱對數(shù)據(jù)結(jié)構(gòu)的考查目標定位為掌握數(shù)據(jù)結(jié)構(gòu)的基本概念、基本原理和基本方法;掌握數(shù)據(jù)的邏輯結(jié)構(gòu)、存儲結(jié)構(gòu)及其基本操作的實現(xiàn),能夠?qū)λ惴ㄟM行基本的時間復雜度與空間復雜度的分析;能夠綜合運用數(shù)據(jù)結(jié)構(gòu)的基本原理和方法進行問題的分析和求解,具備采用C或C++語言設(shè)計與實現(xiàn)算法的能力。要求運用數(shù)據(jù)結(jié)構(gòu)的基本原理和方法進行分析問題,要求學生能夠活學活用,事實上,可以看出研究生入學考試對知識實際應(yīng)用能力的加強。大綱仍要求學生具備采用C或C++語言設(shè)計與實現(xiàn)算法的能力,但是考生不必因此而專門復習一遍C或C++程序設(shè)計,畢竟復習時間有限,而且數(shù)據(jù)結(jié)構(gòu)要求的重點在于算法設(shè)計的能力,而不是編寫代碼的能力,因此,只要能用類似偽代碼的形式把思路表達清楚就行,不用強求寫出一個沒有任何語法錯誤的程序。
下面我們來解析一下知識點。
線性表這一章里面的知識點不多,但要做到深刻理解,能夠應(yīng)用相關(guān)知識點解決實際問題。鏈表上插入、刪除節(jié)點時的指針操作是選擇題的一個常考點,諸如雙向鏈表等一些相對復雜的鏈表上的操作也是可以出現(xiàn)在綜合應(yīng)用題當中的。
棧、隊列和數(shù)組可以考查的知識點相比鏈表來說要多一些。最基本的,是棧與隊列FILO和FIFO的特點。比如針對棧FILO的特點,進棧出棧序列的問題常出現(xiàn)在選擇題中。其次,是棧和隊列的順序和鏈式存儲結(jié)構(gòu),這里一個??键c是不同存儲結(jié)構(gòu)下棧頂指針、隊首指針以及隊尾指針的操作,特別是循環(huán)隊列判滿和判空的2種判斷方法。再次,是特殊矩陣的壓縮存儲,這個考點復習的重點可以放在二維矩陣與一維數(shù)組相互轉(zhuǎn)換時,下標的計算方法,比如與對角線平行的若干行上數(shù)據(jù)非零的矩陣存放在一維數(shù)組后,各個數(shù)據(jù)點相應(yīng)的下標的計算。這一章可能的大題點,在于利用堆?;蜿犃械奶匦裕瑢⑺鼈冏鳛榛A(chǔ)的數(shù)據(jù)結(jié)構(gòu),支持實際問題求解算法的設(shè)計,例如用棧解決遞歸問題,用隊列解決圖的遍歷問題等等。
樹和二叉樹。這一章中我們從順序式的數(shù)據(jù)結(jié)構(gòu),轉(zhuǎn)向?qū)哟问降臄?shù)據(jù)結(jié)構(gòu),要掌握樹、二叉樹的各種性質(zhì)、樹和二叉樹的不同存儲結(jié)構(gòu)、森林、樹和二叉樹之間的轉(zhuǎn)換、線索化二叉樹、二叉樹的應(yīng)用(二叉排序樹、平衡二叉樹和Huffman樹),重點要熟練掌握的,是森林、樹以及二叉樹的前中后三種遍歷方式,要能進行相應(yīng)的算法設(shè)計。這一部分是數(shù)據(jù)結(jié)構(gòu)考題歷來的重點和難點,復習時要特別關(guān)注。一些常見的選擇題考點包括:滿二叉樹、完全二叉樹節(jié)點數(shù)的計算,由樹、二叉樹的示意圖給出相應(yīng)的遍歷序列,依據(jù)二叉樹的遍歷序列還原二叉樹,線索化的實質(zhì),計算采用不同的方法線索化后二叉樹剩余空指針域的個數(shù),平衡二叉樹的定義、性質(zhì)、建立和四種調(diào)整算法以及回溯法相關(guān)的問題。常見的綜合應(yīng)用題考點包括:二叉樹的遍歷算法,遍歷基礎(chǔ)上針對二叉樹的一些統(tǒng)計和操作(比如結(jié)點數(shù)統(tǒng)計、左右子樹對換等等),判斷某棵二叉樹是否二叉排序樹,以上這些都要求能用遞歸的和非遞歸的算法解決,特別要重視非遞歸的算法,線索化后二叉樹的遍歷算法,如查找某結(jié)點線索化后的前驅(qū)或后繼結(jié)點的算法以及給出Huffman編碼等等。
圖。在這一章中需要識記的是圖以及基于圖的各種定義,存儲方式。本章重點:要熟練掌握圖的深度遍歷和廣度遍歷算法,這是用圖來解決應(yīng)用問題時常用的算法基礎(chǔ)。需要掌握基于圖的多個算法,能夠以手工計算的方式在一個給定的圖上執(zhí)行特定的算法求解問題。常見的應(yīng)用問題直接給出或經(jīng)過抽象,會成為下列問題:最小生成樹求解(PRIM算法和KRUSKAL算法,兩種方法思想都很簡單,但要注意不要混淆這兩種方法),拓撲排序問題(這里會用到數(shù)組實現(xiàn)的鏈表,可以注意一下),關(guān)鍵路徑問題(數(shù)據(jù)結(jié)構(gòu)的較大難點,要把概念理解透,能做出表格找出關(guān)鍵路徑),最短路徑問題(有重要的應(yīng)用背景,也是貪心法不多的能給出最優(yōu)解的典型問題之一)。
查找。這一章,需要識記關(guān)鍵字、主關(guān)鍵字、次關(guān)鍵字的含義;本章重點: 靜態(tài)查找與動態(tài)
一、 數(shù)據(jù)結(jié)構(gòu)考查目標
1. 掌握數(shù)據(jù)結(jié)構(gòu)的基本概念、基本原理和基本方法。
2. 掌握數(shù)據(jù)的邏輯結(jié)構(gòu)、存儲結(jié)構(gòu)及其基本操作的實現(xiàn),能夠?qū)λ惴ㄟM行基本的時間復雜度與空間復雜度的分析。
3. 能夠運用數(shù)據(jù)結(jié)構(gòu)的基本原理和方法進行問題的分析和求解,具備采用C或C++語言設(shè)計與實現(xiàn)算法的能力。
二、數(shù)據(jù)結(jié)構(gòu)考點解析
今天我們首先來解析一下計算統(tǒng)考大綱數(shù)據(jù)結(jié)構(gòu)部分及其相關(guān)知識點。數(shù)據(jù)結(jié)構(gòu)占了45分,和計算機組成原理部分同一個比重,在以往各年計算機專業(yè)的研究生入學考試中,幾乎沒有學校不考查數(shù)據(jù)結(jié)構(gòu)的內(nèi)容,而且絕大部分考試中,數(shù)據(jù)結(jié)構(gòu)這一門都占據(jù)了重要的地位,這足以體現(xiàn)計算機專業(yè)研究生選拔對數(shù)據(jù)結(jié)構(gòu)課程的要求之重。
2016年的統(tǒng)考大綱對數(shù)據(jù)結(jié)構(gòu)的考查目標定位為掌握數(shù)據(jù)結(jié)構(gòu)的基本概念、基本原理和基本方法;掌握數(shù)據(jù)的邏輯結(jié)構(gòu)、存儲結(jié)構(gòu)及其基本操作的實現(xiàn),能夠?qū)λ惴ㄟM行基本的時間復雜度與空間復雜度的分析;能夠綜合運用數(shù)據(jù)結(jié)構(gòu)的基本原理和方法進行問題的分析和求解,具備采用C或C++語言設(shè)計與實現(xiàn)算法的能力。要求運用數(shù)據(jù)結(jié)構(gòu)的基本原理和方法進行分析問題,要求學生能夠活學活用,事實上,可以看出研究生入學考試對知識實際應(yīng)用能力的加強。大綱仍要求學生具備采用C或C++語言設(shè)計與實現(xiàn)算法的能力,但是考生不必因此而專門復習一遍C或C++程序設(shè)計,畢竟復習時間有限,而且數(shù)據(jù)結(jié)構(gòu)要求的重點在于算法設(shè)計的能力,而不是編寫代碼的能力,因此,只要能用類似偽代碼的形式把思路表達清楚就行,不用強求寫出一個沒有任何語法錯誤的程序。
下面我們來解析一下知識點。
線性表這一章里面的知識點不多,但要做到深刻理解,能夠應(yīng)用相關(guān)知識點解決實際問題。鏈表上插入、刪除節(jié)點時的指針操作是選擇題的一個常考點,諸如雙向鏈表等一些相對復雜的鏈表上的操作也是可以出現(xiàn)在綜合應(yīng)用題當中的。
棧、隊列和數(shù)組可以考查的知識點相比鏈表來說要多一些。最基本的,是棧與隊列FILO和FIFO的特點。比如針對棧FILO的特點,進棧出棧序列的問題常出現(xiàn)在選擇題中。其次,是棧和隊列的順序和鏈式存儲結(jié)構(gòu),這里一個??键c是不同存儲結(jié)構(gòu)下棧頂指針、隊首指針以及隊尾指針的操作,特別是循環(huán)隊列判滿和判空的2種判斷方法。再次,是特殊矩陣的壓縮存儲,這個考點復習的重點可以放在二維矩陣與一維數(shù)組相互轉(zhuǎn)換時,下標的計算方法,比如與對角線平行的若干行上數(shù)據(jù)非零的矩陣存放在一維數(shù)組后,各個數(shù)據(jù)點相應(yīng)的下標的計算。這一章可能的大題點,在于利用堆?;蜿犃械奶匦裕瑢⑺鼈冏鳛榛A(chǔ)的數(shù)據(jù)結(jié)構(gòu),支持實際問題求解算法的設(shè)計,例如用棧解決遞歸問題,用隊列解決圖的遍歷問題等等。
樹和二叉樹。這一章中我們從順序式的數(shù)據(jù)結(jié)構(gòu),轉(zhuǎn)向?qū)哟问降臄?shù)據(jù)結(jié)構(gòu),要掌握樹、二叉樹的各種性質(zhì)、樹和二叉樹的不同存儲結(jié)構(gòu)、森林、樹和二叉樹之間的轉(zhuǎn)換、線索化二叉樹、二叉樹的應(yīng)用(二叉排序樹、平衡二叉樹和Huffman樹),重點要熟練掌握的,是森林、樹以及二叉樹的前中后三種遍歷方式,要能進行相應(yīng)的算法設(shè)計。這一部分是數(shù)據(jù)結(jié)構(gòu)考題歷來的重點和難點,復習時要特別關(guān)注。一些常見的選擇題考點包括:滿二叉樹、完全二叉樹節(jié)點數(shù)的計算,由樹、二叉樹的示意圖給出相應(yīng)的遍歷序列,依據(jù)二叉樹的遍歷序列還原二叉樹,線索化的實質(zhì),計算采用不同的方法線索化后二叉樹剩余空指針域的個數(shù),平衡二叉樹的定義、性質(zhì)、建立和四種調(diào)整算法以及回溯法相關(guān)的問題。常見的綜合應(yīng)用題考點包括:二叉樹的遍歷算法,遍歷基礎(chǔ)上針對二叉樹的一些統(tǒng)計和操作(比如結(jié)點數(shù)統(tǒng)計、左右子樹對換等等),判斷某棵二叉樹是否二叉排序樹,以上這些都要求能用遞歸的和非遞歸的算法解決,特別要重視非遞歸的算法,線索化后二叉樹的遍歷算法,如查找某結(jié)點線索化后的前驅(qū)或后繼結(jié)點的算法以及給出Huffman編碼等等。
圖。在這一章中需要識記的是圖以及基于圖的各種定義,存儲方式。本章重點:要熟練掌握圖的深度遍歷和廣度遍歷算法,這是用圖來解決應(yīng)用問題時常用的算法基礎(chǔ)。需要掌握基于圖的多個算法,能夠以手工計算的方式在一個給定的圖上執(zhí)行特定的算法求解問題。常見的應(yīng)用問題直接給出或經(jīng)過抽象,會成為下列問題:最小生成樹求解(PRIM算法和KRUSKAL算法,兩種方法思想都很簡單,但要注意不要混淆這兩種方法),拓撲排序問題(這里會用到數(shù)組實現(xiàn)的鏈表,可以注意一下),關(guān)鍵路徑問題(數(shù)據(jù)結(jié)構(gòu)的較大難點,要把概念理解透,能做出表格找出關(guān)鍵路徑),最短路徑問題(有重要的應(yīng)用背景,也是貪心法不多的能給出最優(yōu)解的典型問題之一)。
查找。這一章,需要識記關(guān)鍵字、主關(guān)鍵字、次關(guān)鍵字的含義;本章重點: 靜態(tài)查找與動態(tài)