二、數(shù)據(jù)結(jié)構(gòu)部分(40分)
第一章緒論
1.考核知識點
(1)數(shù)據(jù)、數(shù)據(jù)元素、數(shù)據(jù)項、數(shù)據(jù)對象、數(shù)據(jù)結(jié)構(gòu)、邏輯結(jié)構(gòu)、物理結(jié)構(gòu)、元素、結(jié)點等基本概念,抽象數(shù)據(jù)類型的定義、表示和實現(xiàn)方法。
(2)算法設(shè)計的基本要求以及計算語句頻度和估算算法時間復(fù)雜度的方法。
2.考核要求
(1)識記:有關(guān)數(shù)據(jù)結(jié)構(gòu)的基本概念,四種基本數(shù)據(jù)結(jié)構(gòu)的特點。
(2)理解:四種基本數(shù)據(jù)結(jié)構(gòu)的基本運算,算法復(fù)雜度度量的基本概念。
第二章線性表
1.考核知識點
(1)線性表的定義和基本操作。
(2)線性表順序存儲結(jié)構(gòu)的表示和基本運算。
(3)線性表鏈?zhǔn)酱鎯?,單鏈表的表示和查找、插入、刪除等基本操作。
(4)線性表兩種存儲結(jié)構(gòu)優(yōu)缺點的比較。2.考核要求
(1)識記:線性表基本概念、基本運算,單鏈表的表示。
(2)理解:順序存儲和鏈?zhǔn)酱鎯Φ谋容^,各種鏈表的基本操作算法。
第三章棧和隊列
1.考核知識點
(1)棧和隊列的定義及其存儲結(jié)構(gòu)、循環(huán)隊列結(jié)構(gòu)及其存儲。
(2)棧和隊列的主要操作。
(3)棧的應(yīng)用舉例,如:數(shù)制轉(zhuǎn)換等。2.考核要求
(1)識記:棧和隊列的概念、功能、操作特點、主要運算。
(2)理解:棧和隊列與一般線性表對比的特殊性,棧和隊列的順序存儲和鏈?zhǔn)酱鎯Α?/div>
(3)應(yīng)用:棧和隊列的常見的使用場合。
第四章串、數(shù)組
1.考核知識點
(1)數(shù)組(二維數(shù)組)基本概念與存儲方式。
(2)串的基本概念和基本操作,串的存儲方式和BF算法。2.考核要求
(1)識記:數(shù)組的順序存儲結(jié)構(gòu),串的有關(guān)概念。
(2)理解:二維數(shù)組的地址計算,串的基本操作,串的順序存儲結(jié)構(gòu)及其基本操作。
第五章樹和二叉樹
1.考核知識點
(1)樹的定義和術(shù)語。
(2)二叉樹(完全二叉樹、滿二叉樹)的定義和性質(zhì)、二叉樹的存儲結(jié)構(gòu)
(順序表示法和二叉鏈表表示法)。
(3)二叉樹遍歷算法(先序、中序、后序、層次)。2.考核要求
(1)識記:樹的基本概念。
(2)理解:二叉樹的存儲結(jié)構(gòu)、遍歷算法。
第六章圖
1.考核知識點
(1)圖的定義,基本術(shù)語。
(2)圖的存儲結(jié)構(gòu),圖的遍歷,圖的連通性與生成樹,有向無環(huán)圖及應(yīng)用。
2.考核要求
(1)識記:圖的基本概念和術(shù)語,最小生成樹的概念。
(2)理解:圖的存儲方式和基于該存儲方式的基本操作(求入度、出度、下一條邊等)。
第七章查找
1.考核知識點
(1)查找、關(guān)鍵字、平均查找長度等概念。
(2)靜態(tài)查找表的查找算法(順序查找、折半查找)。2.考核要求
(1)識記:有關(guān)查找的基本概念,靜態(tài)查找表和動態(tài)查找表的概念。
(2)理解:各種靜態(tài)查找算法的比較次數(shù)分析。
第八章排序
1.考核知識點
(1)排序的目的、分類和排序方法的穩(wěn)定性的定義。
(2)插入排序的思想,直接插入排序的算法。
(3)交換排序(冒泡排序的算法,快速排序的思想)。
(4)簡單的選擇排序的算法。2.考核要求
(1)了解:直接插入排序、冒泡排序、簡單選擇排序算法的特點和適用范圍。
(2)理解:直接插入排序、冒泡排序、簡單選擇排序的思想,上述排序方法的穩(wěn)定性、平均比較次數(shù)、平均移動次數(shù)。
(3)應(yīng)用:用類C或者C語言編寫直接插入排序、冒泡排序、簡單選擇排序等排序算法。
Ⅳ.參考書目
《C語言程序設(shè)計(第4版)》,何欽銘、顏暉、張泳主編,高等教育出版社,2020年9月第4版。
《數(shù)據(jù)結(jié)構(gòu)(C語言第2版)》(雙色版),嚴(yán)蔚敏、李冬梅、吳偉民編著,人民郵電出版社,2022年1月。
Ⅴ.題型示例
一、單項選擇題(每小題備選答案中,只有一個符合題意的正確答案。請將選定的答案,填入表格中,多選、錯選、不選均不得分。)
1.C語言程序的3種基本結(jié)構(gòu)是順序結(jié)構(gòu)、選擇結(jié)構(gòu)和結(jié)構(gòu)。
A.循環(huán)B.遞歸C.轉(zhuǎn)移D.嵌套
2.對于棧操作的原則是。
A.先進先出B.后進先出C.后進后出D.不分順序
二、填空題
1.當(dāng)a=0,b=2,c=3時,則表達式c+b>0&&b==a的值是。
2.一棵深度為3(根的層次號為1)的滿二叉樹有個葉子結(jié)點。
三、判斷題
1.C語言中,表達式1/2與1.0/2的結(jié)果相同。()
2.數(shù)據(jù)結(jié)構(gòu)中隊列是非線性結(jié)構(gòu)。()
四、程序分析題
1.下列程序的運行結(jié)果是。#include<stdio.h>
int main(void){
int x=8;
do{
printf("%d",x);
}while(!x);return 0;
}
五、算法設(shè)計題
1.求整數(shù)的位數(shù)及各位數(shù)字之和,對于給定的正整數(shù)N,求它的位數(shù)及其各位數(shù)字之和。
輸入示例:
9875
輸出示例:
4 29
2.簡單選擇排序也稱作直接選擇排序,請簡述選擇排序算法的基本思想并編寫相應(yīng)程序:輸入一個正整數(shù)n(1<n≤10),再輸入n個整數(shù),將它們從小到大排序后輸出。
輸入示例:
Please input n:5
Please input 5 number:12 7 5 8 10
輸出示例:
Select Sort:5 7 8 10 12
六、應(yīng)用題
1.設(shè)一棵二叉樹的先序序列:ABDFCEGH,中序序列BFDAGEHC。請畫出這棵二叉樹。
2.設(shè)待排序的關(guān)鍵字序列為{3,7,5,12,9,2},試分別寫出使用以下排序方法,每趟排序結(jié)束后關(guān)鍵字序列的狀態(tài)。
直接插入排序
冒泡排序
簡單選擇排序

關(guān)注公眾號
快掃碼關(guān)注
公眾號吧
58