數(shù)據(jù)結(jié)構(gòu)與算法
1.一個(gè)棧的初始狀態(tài)為空?,F(xiàn)將元素1、2、3、4、5、A、B、C、D、E依次入棧,然后再依次出棧,則元素出棧的順序是(B)
A.12345ABCDE? B.EDCBA54321? C.ABCDE12345? D.54321EDCBA
2.下列敘述中正確的是(D)
A.循環(huán)隊(duì)列有隊(duì)頭和隊(duì)尾兩個(gè)指針,因此,循環(huán)隊(duì)列是非線性結(jié)構(gòu)
B.在循環(huán)隊(duì)列中,只需要隊(duì)頭指針就能反映隊(duì)列中元素的動(dòng)態(tài)變化情況
C.在循環(huán)隊(duì)列中,只需要隊(duì)尾指針就能反映隊(duì)列中元素的動(dòng)態(tài)變化情況
D.循環(huán)隊(duì)列中元素的個(gè)數(shù)是由隊(duì)頭指針和隊(duì)尾指針共同決定
3.下列敘述中正確的是(A)
A.順序存儲(chǔ)結(jié)構(gòu)的存儲(chǔ)一定是連續(xù)的,鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的存儲(chǔ)空間不一定是連續(xù)的
B.順序存儲(chǔ)結(jié)構(gòu)只針對(duì)線性結(jié)構(gòu),鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)只針對(duì)非線性結(jié)構(gòu)
C.順序存儲(chǔ)結(jié)構(gòu)能存儲(chǔ)有序表,鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)不能存儲(chǔ)有序表
D.鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)比順序存儲(chǔ)結(jié)構(gòu)節(jié)省存儲(chǔ)空間
4.下列敘述中正確的是(D)。
A.棧是“先進(jìn)先出”的線性表B.隊(duì)列是“先進(jìn)后出”的線性表C.循環(huán)隊(duì)列是非線性結(jié)構(gòu)
D.有序線性表既可以采用順序存儲(chǔ)結(jié)構(gòu),也可以采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
5.支持子程序調(diào)用的數(shù)據(jù)結(jié)構(gòu)是(A)。
A.棧B.樹C.隊(duì)列D.二叉樹
6.某二叉樹有5個(gè)度為2的結(jié)點(diǎn),則該二叉樹中的葉子結(jié)點(diǎn)數(shù)是(C)。
A.10? B.8? C.6? D.4
7.算法的有窮性是指(A)。
A.算法程序的運(yùn)行時(shí)間是有限的B.算法程序所處理的數(shù)據(jù)量是有限的
C.算法程序的長度是有限的D.算法只能被有限的用戶使用
8.對(duì)長度為n的線性表排序,在最壞情況下,比較次數(shù)不是n(n-1)/2的排序方法是(D)。
A.快速排序B.冒泡排序C.直接插入排序D.堆排序
9.下列關(guān)于棧的敘述正確的是(B)。
A.棧按“先進(jìn)先出”組織數(shù)據(jù)B.棧按“先進(jìn)后出”組織數(shù)據(jù)
C.只能在棧底插入數(shù)據(jù)D.不能刪除數(shù)據(jù)
10.算法的空間復(fù)雜度是指(A)。
A.算法在執(zhí)行過程中所需要的計(jì)算機(jī)存儲(chǔ)空間B.算法所處理的數(shù)據(jù)量
C.算法程序中的語句或指令條數(shù)D.算法在執(zhí)行過程中所需要的臨時(shí)工作單元數(shù)
11.下列關(guān)于線性鏈表的敘述中,正確的是(C)。
A.各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)空間可以不連續(xù),但它們的存儲(chǔ)順序與邏輯順序必須一致
B.各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)順序與邏輯順序可以不一致,但它們的存儲(chǔ)空間必須連續(xù)
C.進(jìn)行插入與刪除時(shí),不需要移動(dòng)表中的元素
D.以上說法均不正確
12.一棵二叉樹共有25個(gè)結(jié)點(diǎn),其中5個(gè)是葉子結(jié)點(diǎn),則度為1的結(jié)點(diǎn)數(shù)為(A)
A.16? B.10? C.6? D.4
13.下列關(guān)于棧敘述正確的是(A)。
A.棧頂元素最先能被刪除B.棧頂元素最后才能被刪除
C.棧底元素永遠(yuǎn)不能被刪除D.棧底元素最先被刪除
14.下列敘述中正確的是(C)。
A.在棧中,棧中元素隨棧底指針與棧頂指針的變化而動(dòng)態(tài)變化
B.在棧中,棧頂指針不變,棧中元素隨棧底指針的變化而動(dòng)態(tài)變化
C.在棧中,棧底指針不變,棧中元素隨棧頂指針的變化而動(dòng)態(tài)變化
D.以上說法均不正確
15.設(shè)循環(huán)隊(duì)列的存儲(chǔ)空間為Q(1:35),初始狀態(tài)為front=rear=35?,F(xiàn)經(jīng)過一系列入隊(duì)與退隊(duì)運(yùn)算后,front=15,rear=15,則循環(huán)隊(duì)列中的元素個(gè)數(shù)為(D)。
A.15? B.16? C.20? D.0或35
16.下列與隊(duì)列結(jié)構(gòu)有關(guān)聯(lián)的是(D)。
A.函數(shù)的遞歸調(diào)用B.數(shù)組元素的引用C.多重循環(huán)的執(zhí)行D.先到先服務(wù)的作業(yè)調(diào)度
17.對(duì)下列二叉樹進(jìn)行前序遍歷的結(jié)果為(C)。
A.DYBEAFCZX? B.YDEBFZXCA? C.ABDYECFXZ? D.ABCDEFXYZ
18.設(shè)順序表的長度為n。下列算法中,最壞情況下比較次數(shù)小于n的是(A)。
A.尋找最大項(xiàng)B.堆排序C.快速排序D.順序查找法
19.設(shè)棧的順序存儲(chǔ)空間為S(1:m),初始狀態(tài)為top=m+1?,F(xiàn)經(jīng)過一系列正常的入棧與退棧操作后,top=20,則棧中的元素個(gè)數(shù)為(C)。
A.30? B.20? C.m-19? D.M-20
20.某二叉樹的后序遍歷序列與中序遍歷序列相同,均為ABCDEF,則按層次輸出(同一層從左到右)的序列為(A)。
A.FEDCBA? B.CBAFED? C.DEFCBA? D.ABCDEF
21.設(shè)棧的順序存儲(chǔ)空間為S(1:m),初始狀態(tài)為top=0。現(xiàn)經(jīng)過一系列正常的入棧與退棧操作后,top=m+1,則棧中的元素個(gè)數(shù)為(A)。
A.不可能? B.m+1? C.0? D.m
22.下列排序法中,最壞情況下時(shí)間復(fù)雜度最小的是(A)。
A.堆排序B.快速排序C.希爾排序D.冒泡排序
23.下列敘述中正確的是(A)。
A.對(duì)數(shù)據(jù)進(jìn)行壓縮存儲(chǔ)會(huì)降低算法的空間復(fù)雜度B.算法的優(yōu)化主要通過程序的編制技巧來實(shí)現(xiàn)
C.算法的復(fù)雜度與問題的規(guī)模無關(guān)D.數(shù)值型算法只需考慮計(jì)算結(jié)果的可靠性
24.下列排序法中,每經(jīng)過一次元素的交換會(huì)產(chǎn)生新的逆序的是(A)。
A.快速排序? B.冒泡排序? C.簡單插入排序? D.簡單選擇排序
25.在具有2n個(gè)結(jié)點(diǎn)的完全二叉樹中,葉子結(jié)點(diǎn)個(gè)數(shù)為(A)。
A.n? B.n+1? C.n-1? D.n/2
26.下列敘述中正確的是(A)。
A.在棧中,棧頂指針的動(dòng)態(tài)變化決定棧中元素的個(gè)數(shù)
B.在循環(huán)隊(duì)列中,隊(duì)尾指針的動(dòng)態(tài)變化決定隊(duì)列的長度
C.在循環(huán)鏈表中,頭指針和鏈尾指針的動(dòng)態(tài)變化決定鏈表的長度
D.在線性鏈表中,頭指針和鏈尾指針的動(dòng)態(tài)變化決定鏈表的長度
27.某二叉樹的中序遍歷序列為CBADE,后序遍歷序列為CBADE,則前序遍歷序列為(A)。
A.EDABC? B.CBEDA? C.CBADE? D.EDCBA
28.下列敘述中正確的是(A)。
A.在循環(huán)隊(duì)列中,隊(duì)頭指針和隊(duì)尾指針的動(dòng)態(tài)變化決定隊(duì)列的長度
B.在循環(huán)隊(duì)列中,隊(duì)尾指針的動(dòng)態(tài)變化決定隊(duì)列的長度
C.在帶鏈的隊(duì)列中,隊(duì)頭指針與隊(duì)尾指針的動(dòng)態(tài)變化決定隊(duì)列的長度
D.在帶鏈的棧中,棧頂指針的動(dòng)態(tài)變化決定棧中元素的個(gè)數(shù)
29.設(shè)順序表的長度為n。下列排序方法中,最壞情況下比較次數(shù)小于n(n-1)/2的是(A)。
A.堆排序? B.快速排序? C.簡單插入排序? D.冒泡排序
30.某二叉樹共有12個(gè)結(jié)點(diǎn),其中葉子結(jié)點(diǎn)只有1個(gè)。則該二叉樹的深度為(根結(jié)點(diǎn)在第1層)(D)
A.3? B.6? C.8? D.12
31.設(shè)表的長度為15。則在最壞情況下,快速排序所需要的比較次數(shù)為(A)。
A.105? B.55? C.15? D.75
32.設(shè)循環(huán)隊(duì)列的存儲(chǔ)空間為Q(1:100),初始狀態(tài)為空。現(xiàn)經(jīng)過一系列正常操作后,front=49,則循環(huán)隊(duì)列中的元素個(gè)數(shù)為(A)。
A.不確定? B.49? C.51? D.50
33.某完全二叉樹按層次輸出(同一層從左到右)的序列為ABCDEFGH。該完全二叉樹的中序序列為(A)。
A.HDBEAFCG? B.HDEBFGCA? C.ABDHECFG? D.ABCDEFGH
34.下面屬于整數(shù)類I的實(shí)例的是(A)
A.229? B.0.229? C.229E-2? D."229"
35.下列敘述中正確的是(C)。
A.所謂有序表是指在順序存儲(chǔ)空間內(nèi)連續(xù)存放的元素序列B.有序表只能順序存儲(chǔ)在連續(xù)的存儲(chǔ)空間內(nèi)
C.有序表可以用鏈接存儲(chǔ)方式存儲(chǔ)在不連續(xù)的存儲(chǔ)空間內(nèi)D.任何存儲(chǔ)方式的有序表均能采用二分法進(jìn)行查找
36.設(shè)二叉樹如下則后序序列為(C)
A.ABDEGCFH? B.DBGEAFHC? C.DGEBHFCA? D.ABCDEFGH
37.下列敘述中正確的是(B)。
A.結(jié)點(diǎn)中具有兩個(gè)指針域的鏈表一定是二叉鏈表
B.結(jié)點(diǎn)中具有兩個(gè)指針域的鏈表可以是線性結(jié)構(gòu),也可以是非線性結(jié)構(gòu)
C.二叉樹只能采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
D.循環(huán)鏈表是非線性結(jié)構(gòu)
38.某二叉樹中有15個(gè)度為1的結(jié)點(diǎn),16個(gè)度為2的結(jié)點(diǎn),則該二叉樹中總的結(jié)點(diǎn)數(shù)為(C)。
A.32? B.46? C.48? D.49
39.下列敘述中正確的是(A)
A.有的二叉樹也能用順序存儲(chǔ)結(jié)構(gòu)表示B.有兩個(gè)指針域的鏈表就是二叉鏈表
C.多重鏈表一定是非線性結(jié)構(gòu)D.順序存儲(chǔ)結(jié)構(gòu)一定是線性結(jié)構(gòu)
40.設(shè)二叉樹共有375個(gè)結(jié)點(diǎn),其中度為2的結(jié)點(diǎn)有187個(gè)。則度為1的結(jié)點(diǎn)個(gè)數(shù)是(A)。
A.0? B.1? C.188? D.不可能有這樣的二叉樹
41.某系統(tǒng)結(jié)構(gòu)圖如下圖所示該系統(tǒng)結(jié)構(gòu)圖的寬度是(B)。

A.5? B.4? C.2? D.1
42.設(shè)二叉樹的前序序列為ABDEGHCFIJ,中序序列為DBGEHACIFJ。則按層次輸出(從上到下,同一層從左到右)的序列為(A)
A.ABCDEFGHIJ? B.DGHEBIJFCA? C.JIHGFEDCBA? D.GHIJDEFBCA
43.設(shè)順序表的長度為16,對(duì)該表進(jìn)行簡單插入排序。在最壞情況下需要的比較次數(shù)為(D)
A.15? B.60? C.30? D.120
44.下列敘述中正確的是(A)
A.循環(huán)隊(duì)列是線性結(jié)構(gòu)B.循環(huán)隊(duì)列是線性邏輯結(jié)構(gòu)
C.循環(huán)隊(duì)列是鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)D.循環(huán)隊(duì)列是非線性存儲(chǔ)結(jié)構(gòu)
45.設(shè)某棵樹的度為3,其中度為3,2,1的結(jié)點(diǎn)個(gè)數(shù)分別為3,0,4。則該樹中的葉子結(jié)點(diǎn)數(shù)為(B)
A.6? B.7? C.8? D.不可能有這樣的樹
46.下列敘述中錯(cuò)誤的是(C)
A.具有兩個(gè)根結(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)一定屬于非線性結(jié)構(gòu)B.具有兩個(gè)以上葉子結(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)一定屬于非線性結(jié)構(gòu)
C.具有兩個(gè)以上指針域的鏈?zhǔn)浇Y(jié)構(gòu)一定屬于非線性結(jié)構(gòu)D.具有一個(gè)根結(jié)點(diǎn)且只有一個(gè)葉子結(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)也可能是非線性結(jié)構(gòu)
47.下列結(jié)構(gòu)中屬于非線性結(jié)構(gòu)的是(C)
A.循環(huán)隊(duì)列? B.二維數(shù)組? C.二叉鏈表? D.雙向鏈表
48.從表中任何一個(gè)結(jié)點(diǎn)位置出發(fā)就可以不重復(fù)地訪問到表中其他所有結(jié)點(diǎn)的鏈表是(A)
A.循環(huán)鏈表? B.雙向鏈表? C.單向鏈表? D.二叉鏈表
49.下列排序法中,最壞情況下時(shí)間復(fù)雜度最小的是(A)。
A.堆排序? B.快速排序? C.希爾排序? D.冒泡排序
50.下列敘述中正確的是(A)。
A.對(duì)數(shù)據(jù)進(jìn)行壓縮存儲(chǔ)會(huì)降低算法的空間復(fù)雜度B.算法的優(yōu)化主要通過程序的編制技巧來實(shí)現(xiàn)
C.算法的復(fù)雜度與問題的規(guī)模無關(guān)D.數(shù)值型算法只需考慮計(jì)算結(jié)果的可靠性