版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、20數(shù)據(jù)結(jié)構(gòu)試卷(二)一、選擇題(24分)1 .下面關(guān)于線性表的敘述錯誤的是()。(A)線性表采用順序存儲必須占用一片連續(xù)的存儲空間(B)線性表采用鏈?zhǔn)酱鎯Σ槐卣加靡黄B續(xù)的存儲空間(C)線性表采用鏈?zhǔn)酱鎯Ρ阌诓迦牒蛣h除操作的實(shí)現(xiàn)(D)線性表采用順序存儲便于插入和刪除操作的實(shí)現(xiàn)2 .設(shè)哈夫曼樹中的葉子結(jié)點(diǎn)總數(shù)為m,若用二叉鏈表作為存儲結(jié)構(gòu),則該哈夫曼樹中總共有()個空指針域。(A)2m-1(B)2m(C)2m+1(D)4m3 .設(shè)順序循環(huán)隊(duì)列Q0:M-1的頭指針和尾指針分別為F和R,頭指針F總是指向隊(duì)頭元素的前一位置,尾指針R總是指向隊(duì)尾元素的當(dāng)前位置,則該循環(huán)隊(duì)列中的元素個數(shù)為()。4.5.
2、6.7.8.(A) R-F(B) F-R設(shè)某棵二叉樹的中序遍歷序列為得到序列為(A) BADC設(shè)某完全無向圖中有(A) n(n-1)/2設(shè)某棵二叉樹中有(A) 9設(shè)某有向圖中有(A) n-1(B) BCDAn個頂點(diǎn),(B) n(n-1)(C) (R-F+M) %M (D) (F-R+M) %MABCD ,前序遍歷序列為 CABD ,則后序遍歷該二叉樹(C) CDAB則該完全無向圖中有(-2(C) n(D) CBDA)條件。(D) n 2-12000個結(jié)點(diǎn),則該二叉樹的最小高度為(B) 10(C) 11n個頂點(diǎn),則該有向圖對應(yīng)的鄰接表中有(B) n(C) n+1(D) 12)個表頭結(jié)點(diǎn)。(D)
3、2n-1設(shè)一組初始記錄關(guān)鍵字序列(56, 3, 8),以第一個記錄關(guān)鍵字5為基準(zhǔn)進(jìn)行一趟快速排序的結(jié)果為(A) 2, 3, 5, 8, (C) 3, 2, 5, 6,(B) 3, 2, 5, 8(D) 2, 3, 6, 5二、填空題(24分)1. 1.為了能有效地應(yīng)用HASH查找技術(shù),必須解決的兩個問題是和。2. 2.下面程序段的功能實(shí)現(xiàn)數(shù)據(jù)x進(jìn)棧,要求在下劃線處填上正確的語句。typedefstructints100;inttop;sqstack;voidpush(sqstack&stack,intx),if(stack.top=m-1)printf(overflow);else;3. 3.
4、中序遍歷二叉排序樹所得到的序列是序列(填有序或無序)。4. 4.快速排序的最壞時間復(fù)雜度為,平均時間復(fù)雜度為。5. 5.設(shè)某棵二叉樹中度數(shù)為0的結(jié)點(diǎn)數(shù)為No,度數(shù)為1的結(jié)點(diǎn)數(shù)為Ni,則該二叉樹中度數(shù)為2的結(jié)點(diǎn)數(shù)為;若采用二叉鏈表作為該二叉樹的存儲結(jié)構(gòu),則該二叉樹中共有個空指針域。6. 6.設(shè)某無向圖中頂點(diǎn)數(shù)和邊數(shù)分別為n和e,所有頂點(diǎn)的度數(shù)之和為d,則e=。7. 7.設(shè)一組初始記錄關(guān)鍵字序列為(55,63,44,38,75,80,31,56),則利用篩選法建立的初始堆為。Vi_3_.2-4v2-.1-3V3-1-4一28. 8.設(shè)某無向圖G的鄰接表為v4-1-3,則從頂點(diǎn)Vi開始的深度優(yōu)先遍歷
5、序列為;廣度優(yōu)先遍歷序列為。三、應(yīng)用題(36分)1.1.設(shè)一組初始記錄關(guān)鍵字序列為(45,80,48,40,22,78),則分別給出第4趟簡單選擇排序和第4趟直接插入排序后的結(jié)果。2. 2.設(shè)指針變量p指向雙向鏈表中結(jié)點(diǎn)A,指針變量q指向被插入結(jié)點(diǎn)B,要求給出在結(jié)點(diǎn)A的后面插入結(jié)點(diǎn)B的操作序列(設(shè)雙向鏈表中結(jié)點(diǎn)的兩個指針域分別為llink和rlink)。3. 3.設(shè)一組有序的記錄關(guān)鍵字序列為(13,18,24,35,47,50,法用二分查找,要求計(jì)算出查找關(guān)鍵字62時的比較次數(shù)并計(jì)算出查找成功時的平均查找長度。4. 4.設(shè)一棵樹T中邊的集合為(A,B),(A,C),(A,D),(B,E),(C
6、,F),(C,G),要求用孩子兄弟表示法(二叉鏈表)表示出該樹的存儲結(jié)構(gòu)并將該樹轉(zhuǎn)化成對應(yīng)的二叉樹。5. 5.設(shè)有無向圖G(如右圖所示),要求給出用普里姆算法構(gòu)造最小生成樹所走過的邊的集合。6. 6.設(shè)有一組初始記錄關(guān)鍵字為(45,80,48,40,22,78),62, 83, 90),查找方要求構(gòu)造一棵二叉排序樹并給出構(gòu)造過程。數(shù)據(jù)結(jié)構(gòu)試卷(二)參考答案一、選擇題1.D2.B3.C4.A5.A6.C7.B8.C二、填空題1. 1.構(gòu)造一個好的HASH函數(shù),確定解決沖突的方法2. 2.stack.top+,stack.sstack.top=x3. 3.有序4. 4.O(n2),O(nlog2n
7、)5. 5.No-1,2No+Ni6. 6.d/27. 7.(31,38,54,56,75,80,55,63)8. 8.(1,3,4,2),(1,3,2,4)三、應(yīng)用題1. 1.(22,40,45,48,80,78),(40,45,48,80,22,78)2. 2.q-llink=p;q-rlink=p-rlink;p-rlink-llink=q;p-rlink=q;3. 3.2,ASL=91*1+2*2+3*4+4*2)=25/94. 4.樹的鏈?zhǔn)酱鎯Y(jié)構(gòu)略,二叉樹略5. 5.E=(1,3),(1,2),(3,5),(5,6),(6,4)6. 6.略數(shù)據(jù)結(jié)構(gòu)試卷(三)一、選擇題(30分)1
8、.設(shè)某數(shù)據(jù)結(jié)構(gòu)的二元組形式表示為A=(D,R),D=01,02,03,04,05,06,07,08,09,R=r,r=,則數(shù)據(jù)結(jié)構(gòu)人是()。(A)線性結(jié)構(gòu)(B)樹型結(jié)本勾(C)物理結(jié)構(gòu)(D)圖型結(jié)構(gòu)2 .下面程序的時間復(fù)雜為()for(i=1,s=0;i=n;i+)t=1;for(j=1;jnext;p-data=q-data;p-next=q-next;free(q);(B) q=p-next;q-data=p-data;p-next=q-next;free(q);(C) q=p-next;p-next=q-next;free(q);(D) q=p-next;p-data=q-data;fr
9、ee(q);4 .設(shè)有n個待排序的記錄關(guān)鍵字,則在堆排序中需要()個輔助記錄單元。2(A)1(B)n(C)nlog2n(D)n5 .設(shè)一組初始關(guān)鍵字記錄關(guān)鍵字為(20,15,14,18,21,36,40,10),則以20為基準(zhǔn)記錄的一趟快速排序結(jié)束后的結(jié)果為()。(A)10,15,14,18,20,36,40,21(B)10,15,14,18,20,40,36,21(C)10,15,14,20,18,40,36,2l(D)15,10,14,18,20,36,40,216 .設(shè)二叉排序樹中有n個結(jié)點(diǎn),則在二叉排序樹的平均平均查找長度為()。(A)O(1)(B)O(log2n)(C)(D)O(n2
10、)7 .設(shè)無向圖G中有n個頂點(diǎn)e條邊,則其對應(yīng)的鄰接表中的表頭結(jié)點(diǎn)和表結(jié)點(diǎn)的個數(shù)分別為()。(A)n,e(B)e,n(C)2n,e(D)n,2e8 .設(shè)某強(qiáng)連通圖中有n個頂點(diǎn),則該強(qiáng)連通圖中至少有()條邊。(A)n(n-1)(B)n+1(C)n(D)n(n+1)9 .設(shè)有5000個待排序的記錄關(guān)鍵字,如果需要用最快的方法選出其中最小的10個記錄關(guān)鍵字,則用下列()方法可以達(dá)到此目的。(A)快速排序(B)堆排序(C)歸并排序(D)插入排序10 .下列四種排序中()的空間復(fù)雜度最大。(A)插入排序(B)冒泡排序(C)堆排序(D)歸并排序二、填空殖(48分,其中最后兩小題各6分)1. 1.數(shù)據(jù)的物理
11、結(jié)本主要包括和兩種情況。2. 2.設(shè)一棵完全二叉樹中有500個結(jié)點(diǎn),則該二叉樹的深度為;若用二叉鏈表作為該完全二叉樹的存儲結(jié)構(gòu),則共有個空指針域。3. 3.設(shè)輸入序列為1、2、3,則經(jīng)過棧的作用后可以得到種不同的輸出序列。4. 4.設(shè)有向圖G用鄰接矩陣Ann作為存儲結(jié)構(gòu),則該鄰接矩陣中第i行上所有元素之和等于頂點(diǎn)i的,第i列上所有元素之和等于頂點(diǎn)i的。5. 5.設(shè)哈夫曼樹中共有n個結(jié)點(diǎn),則該哈夫曼樹中有個度數(shù)為1的結(jié)點(diǎn)。6. 6.設(shè)有向圖G中有n個頂點(diǎn)e條有向邊,所有的頂點(diǎn)入度數(shù)之和為d,則e和d的關(guān)系為。7. 7.遍歷二叉排序樹中的結(jié)點(diǎn)可以得到一個遞增的關(guān)鍵字序列(填先序、中序或后序)8.
12、8.設(shè)查找表中有100個元素,如果用二分法查找方法查找數(shù)據(jù)元素X,則最多需要比較次就可以斷定數(shù)據(jù)元素X是否在查找表中。9. 9.不論是順序存儲結(jié)構(gòu)的棧還是鏈?zhǔn)酱鎯Y(jié)構(gòu)的棧,其入棧和出棧操作的時間復(fù)雜度均為。10. 10.設(shè)有n個結(jié)點(diǎn)的完全二叉樹,如果按照從自上到下、從左到右從1開始順序編號,則第i個結(jié)點(diǎn)的雙親結(jié)點(diǎn)編號為,右孩子結(jié)點(diǎn)的編號為。11. 11.設(shè)一組初始記錄關(guān)鍵字為(72,73,71,23,94,16,5),則以記錄關(guān)鍵字72為基準(zhǔn)的一趟快速排序結(jié)果為。12. 12.設(shè)有向圖G中有向邊的集合E=,則該圖的一種拓?fù)湫蛄袨椤?3. 13.下列算法實(shí)現(xiàn)在順序散列表中查找值為x的關(guān)鍵字,請?jiān)?/p>
13、下劃線處填上正確的語句。structrecordintkey;intothers;inthashsqsearch(structrecordhashtable,intk)inti,j;j=i=k%p;while(hashtablej.key!=k&hashtablej.flag!=0)j=()%m;if(i=j)return(-1);if()return(j);elsereturn(-1);14. 14.下列算法實(shí)現(xiàn)在二叉排序樹上查找關(guān)鍵值k,請?jiān)谙聞澗€處填上正確的語句。typedefstructnodeintkey;structnode*lchild;structnode*rchild;bit
14、ree;bitree*bstsearch(bitree*t,intk)if(t=0)return(0);elsewhile(t!=0)if(t-key=k);elseif(t-keyk)t=t-lchild;else;數(shù)據(jù)結(jié)構(gòu)試卷(三)參考答案一、選擇題1.B2.B3.A4.A5.A6.B7.D8.C9.B10.D第3小題分析:首先用指針變量q指向結(jié)點(diǎn)A的后繼結(jié)點(diǎn)B,然后將結(jié)點(diǎn)B的值復(fù)制到結(jié)點(diǎn)A中,最后刪除結(jié)點(diǎn)Bo第9小題分析:9快速排序、歸并排序和插入排序必須等到整個排序結(jié)束后才能夠求出最小的10個數(shù),而堆排序只需要在初始堆的基礎(chǔ)上再進(jìn)行10次篩選即可,每次篩選的時間復(fù)雜度為O(log2n)
15、。二、填空題1. 1.順序存儲結(jié)構(gòu)、鏈?zhǔn)酱鎯Y(jié)構(gòu)2. 2.9,5013. 3.54. 4.出度,入度5. 5.06. 6.e=d7. 7.中序8. 8.79. 9.0(1)10. 10.i/2,2i+111. 11.(5,16,71,23,72,94,73)12. 12.(1,4,3,2)13. 13.j+1,hashtablej.key=k14. 14.return(t),t=t-rchild第8小題分析:二分查找的過程可以用一棵二叉樹來描述,該二叉樹稱為二叉判定樹。在有序表上進(jìn)行二分查找時的查找長度不超過二叉判定樹的高度1+log2n。數(shù)據(jù)結(jié)構(gòu)試卷(四)一、選擇題(30分)1 .設(shè)一維數(shù)組
16、中有n個數(shù)組元素,則讀取第i個數(shù)組元素的平均時間復(fù)雜度為()。(A)O(n)(B)O(nlog2n)(C)O(1)(D)O(n2)2 .設(shè)一棵二叉樹的深度為k,則該二叉樹中最多有()個結(jié)點(diǎn)。(A)2k-1(B)2k(C)2k-1(D)2k-13 .設(shè)某無向圖中有n個頂點(diǎn)e條邊,則該無向圖中所有頂點(diǎn)的入度之和為()。(A)n(B)e(C)2n(D)2e4 .在二叉排序樹中插入一個結(jié)點(diǎn)的時間復(fù)雜度為()。2(A)O(1)(B)O(n)(C)O(log2n)(D)O(n2)5 .設(shè)某有向圖的鄰接表中有n個表頭結(jié)點(diǎn)和m個表結(jié)點(diǎn),則該圖中有()條有向邊。(A)n(B)n-1(C)m(D)m-16 .設(shè)一
17、組初始記錄關(guān)鍵字序列為(345,253,674,924,627),則用基數(shù)排序需要進(jìn)行()趟的分配和回收才能使得初始關(guān)鍵字序列變成有序序列。(A)3(B)4(C)5(D)87 .設(shè)用鏈表作為棧的存儲結(jié)構(gòu)則退棧操作()。(A)必須判別棧是否為滿(B)必須判別棧是否為空(C)判別棧元素的類型(D)對棧不作任何判別8 .下列四種排序中()的空間復(fù)雜度最大。(A)快速排序(B)冒泡排序(C)希爾排序(D)堆9 .設(shè)某二叉樹中度數(shù)為0的結(jié)點(diǎn)數(shù)為No,度數(shù)為1的結(jié)點(diǎn)數(shù)為N,度數(shù)為2的結(jié)點(diǎn)數(shù)為N2,則下列等式成立的是()。(A)No=Ni+1(B)No=Ni+N2(C)No=N2+1(D)No=2Ni+11
18、0 .設(shè)有序順序表中有n個數(shù)據(jù)元素,則利用二分查找法查找數(shù)據(jù)元素X的最多比較次數(shù)不超過()。(A)log2n+1(B)log2n-1(C)log2n(D)log2(n+1)二、填空題(42分)1.1. 設(shè)有n個無序的記錄關(guān)鍵字,則直接插入排序的時間復(fù)雜度為,快速排序的平均時間復(fù)雜度為。2. 2.設(shè)指針變量p指向雙向循環(huán)鏈表中的結(jié)點(diǎn)X,則刪除結(jié)點(diǎn)X需要執(zhí)行的語句序列為(設(shè)結(jié)點(diǎn)中的兩個指針域分別為llink和rlink)。3. 3.根據(jù)初始關(guān)鍵字序列(19,22,01,38,10)建立的二叉排序樹的高度為。4. 4.深度為k的完全二叉樹中最少有個結(jié)點(diǎn)。5. 5.設(shè)初始記錄關(guān)鍵字序列為(Ki,K2,
19、,Kn),則用篩選法思想建堆必須從第個元素開始進(jìn)行篩選。6. 6.設(shè)哈夫曼樹中共有99個結(jié)點(diǎn),則該樹中有個葉子結(jié)點(diǎn);若采用二叉鏈表作為存儲結(jié)構(gòu),則該樹中有個空指針域。7. 7.設(shè)有一個順序循環(huán)隊(duì)列中有M個存儲單元,則該循環(huán)隊(duì)列中最多能夠存儲個隊(duì)列元素;當(dāng)前實(shí)際存儲個隊(duì)列元素(設(shè)頭指針F指向當(dāng)前隊(duì)頭元素的前一個位置,尾指針指向當(dāng)前隊(duì)尾元素的位置)。8. 8.設(shè)順序線性表中有n個數(shù)據(jù)元素,則第i個位置上插入一個數(shù)據(jù)元素需要移動表中個數(shù)據(jù)元素;刪除第i個位置上的數(shù)據(jù)元素需要移動表中個元素。9. 9.設(shè)一組初始記錄關(guān)鍵字序列為(20,18,22,16,30,19),則以20為中軸的一趟快速排序結(jié)果為。
20、10. 10.設(shè)一組初始記錄關(guān)鍵字序列為(20,18,22,16,30,19),則根據(jù)這些初始關(guān)鍵字序列建成的初始堆為。11. 11.設(shè)某無向圖G中有n個頂點(diǎn),用鄰接矩陣A作為該圖的存儲結(jié)構(gòu),則頂點(diǎn)i和頂點(diǎn)j互為鄰接點(diǎn)的條件是。12. 12.設(shè)無向圖對應(yīng)的鄰接矩陣為A,則A中第i上非0元素的個數(shù)第i列上非0元素的個數(shù)(填等于,大于或小于)。13. 13.設(shè)前序遍歷某二叉樹的序列為ABCD,中序遍歷該二叉樹的序列為BADC,則后序遍歷該二叉樹的序列為。14. 14.設(shè)散列函數(shù)H(k)=kmodp,解決沖突的方法為鏈地址法。要求在下列算法劃線處填上正確的語句完成在散列表hashtalbe中查找關(guān)鍵
21、字值等于k的結(jié)點(diǎn),成功時返回指向關(guān)鍵字的指針,不成功時返回標(biāo)志0。typedefstructnodeintkey;structnode*next;Iklist;voidcreatelkhash(lklist*hashtable)inti,k;lklist*s;for(i=0;im;i+);for(i=0;ikey=ai;k=ai%p;s-next=hashtablek;數(shù)據(jù)結(jié)構(gòu)試卷(四)參考答案一、選擇題2. D3. D4. B5.7. B8. A9. C10.1.C6.AO(n2), O(nlog2n)pllink-rlink=p-rlink; p-rlink-llink=p-rlink二、
22、填空題1. 1.2. 2.3. 3.4. 4.25. 5.n/26. 6.50,517. 7.m-1,(R-F+M)%M8. 8.n+1-i,n-i9. 9.(19,18,16,20,30,22)10. 10.(16,18,19,20,32,22)11. 11.Aij=112. 12.等于13. 13.BDCA14. 14.hashtablei=0,hashtablek=s數(shù)據(jù)結(jié)構(gòu)試卷(五)、選擇題(30分)1 .數(shù)據(jù)的最小單位是()。(A)數(shù)據(jù)項(xiàng)(B)數(shù)據(jù)類型(C)數(shù)據(jù)元素(D)數(shù)據(jù)變量2 .設(shè)一組初始記錄關(guān)鍵字序列為(50,40,95,20,15,70,60,45),則以增量d=4的一趟希
23、爾排序Z束后前4條記錄關(guān)鍵字為()。(A) 40, 50, 20, 95(C) 15, 20, 40, 45(B) 15, 40, 60, 20(D) 45, 40, 15, 203.設(shè)一組初始記錄關(guān)鍵字序列為(25, 50, 15, 35, 80, 85, 20, 40, 36, 70),其中含有個長度為2的有序子表,則用歸并排序的方法對該記錄關(guān)鍵字序列進(jìn)行一趟歸并后的結(jié)果為()。(A) 15,25,35,50,20,40,80,85,36,70(B) 15,25,35,50,80,20,85,40,70,36(C)15,25,35,50,80,85,20,36,40,70(D) 15,25
24、,35,50,80,20,36,40,70,854.函數(shù) substr(TASTRUCTURE , 5, 9)的返回值為()。(A)“STRUCTURE(B)“DA”(C) “ASTRUCTUR(D)“DTASTRUCTURE5 .設(shè)一個有序的單鏈表中有 n個結(jié)點(diǎn),現(xiàn)要求插入一個新結(jié)點(diǎn)后使得單鏈表仍然保持有序,則該操作的時間復(fù)雜度為()。(A) O(log 2n) (B) O(1)(C) O(n 2)(D) O(n)6 .設(shè)一棵 m叉樹中度數(shù)為0的結(jié)點(diǎn)數(shù)為No,度數(shù)為1的結(jié)點(diǎn)數(shù)為Nl,,度數(shù)為m的 結(jié)點(diǎn)數(shù)為Nm,則No=()。(A) N+N2+Nm(B)l+N2+2N3+3N4+(m-1)Nm
25、(C) N2+2N3+3N4+(m-1)Nm(D) 2Ni+3N2+(m+1)Nm7 .設(shè)有序表中有1000個元素,則用二分查找查找元素X最多需要比較()次。(A) 25(B) 10(C) 78 .設(shè)連通圖 G 中的邊集 E=(a, b), (a, e), (a, c), (b,頂點(diǎn)a出發(fā)可以得到一種深度優(yōu)先遍歷的頂點(diǎn)序列為(D) 1e), (e, d), (d, f), (f, c),則從)(A) abedfc(B) acfebd(C) aebdfc(D) aedfcb9 .設(shè)輸入序列是1、2、3、 序列中第i個輸出元素是、n,經(jīng)過棧的作用后輸出序列的第一個元素是 ()。n,則輸出(A) n
26、-i(B) n-1-i10設(shè)一組初始記錄關(guān)鍵字序列為(45,基準(zhǔn)而得到一趟快速排序的結(jié)果是(C) n+1-i(D)不能確定80, 55, 40, 42, 85),則以第一個記錄關(guān)鍵字 )。45為(A) 40 , 42, 45, 55, 80, 83(C)42 , 40, 45, 55, 80, 85(B)42 , 40, 45, 80, 85, 88(D) 42 , 40, 45, 85, 55, 80二、填空題(共30分)1. 1.設(shè)有一個順序共享?xiàng)0:n-1,其中第一個棧項(xiàng)指針top1的初值為-1,第二個棧頂指針top2的初值為n,則判斷共享?xiàng)M的條件是。2. 2.在圖的鄰接表中用順序存
27、儲結(jié)構(gòu)存儲表頭結(jié)點(diǎn)的優(yōu)點(diǎn)是3. 3.設(shè)有一個n階的下三角矩陣A,如果按照行的順序?qū)⑾氯蔷仃囍械脑?包括對角線上元素)存放在n(n+1)個連續(xù)的存儲單元中,則Aij與A00之間有個數(shù)據(jù)元素。4. 4.棧的插入和刪除只能在棧的棧頂進(jìn)行,后進(jìn)棧的元素必定先出棧,所以又把棧稱為表;隊(duì)列的插入和刪除運(yùn)算分別在隊(duì)列的兩端進(jìn)行,先進(jìn)隊(duì)列的元素必定先出隊(duì)列,所以又把隊(duì)列稱為表。5. 5.設(shè)一棵完全二叉樹的順序存儲結(jié)構(gòu)中存儲數(shù)據(jù)元素為ABCDEF,則該二叉樹的前序遍歷序列為,中序遍歷序列為,后序遍歷序列為6. 6.設(shè)一棵完全二叉樹有128個結(jié)點(diǎn),則該完全二叉樹的深度為,有個葉子結(jié)點(diǎn)。7. 7.設(shè)有向圖G的存
28、儲結(jié)構(gòu)用鄰接矩陣A來表示,則A中第i行中所有非零元素個數(shù)之和等于頂點(diǎn)i的,第i列中所有非零元素個數(shù)之和等于頂點(diǎn)i的8. 8.設(shè)一組初始記錄關(guān)鍵字序列(ki,k2,,kn)是堆,則對i=1,2,,n/2而言滿足的條件為。9. 9.下面程序段的功能是實(shí)現(xiàn)冒泡排序算法,請?jiān)谙聞澗€處填上正確的語句。voidbubble(intrn)for(i=1;i=n-1;i+)for(exchange=0,j=0;jrj+1)temp=rj+1;rj=temp;exchange=1;if(exchange=0)return;10. 10.下面程序段的功能是實(shí)現(xiàn)二分查找算法,請?jiān)谙聞澗€處填上正確的語句。struct
29、recordintkey;intothers;intbisearch(structrecordr,intk)intlow=0,mid,high=n-1;while(low=high);if(rmid.key=k)return(mid+1);elseif()high=mid-1;elselow=mid+1;return(0);三、應(yīng)用題(24分)1. 1.設(shè)某棵二叉樹的中序遍歷序列為DBEAC,前序遍歷序列為ABDEC,要求給出該二叉樹的的后序遍歷序列。2. 2.設(shè)無向圖G(如右圖所示),給出該圖的最小生成樹上邊的集合并計(jì)算最小生成樹各邊上的權(quán)值之和。3. 3.設(shè)一組初始記錄關(guān)鍵字序列為(15,
30、17,18,22,35,51,60),要求計(jì)算出成功查找時的平均查找長度。4. 4.設(shè)散列表的長度為8,散列函數(shù)H(k)=kmod7,初始記錄關(guān)鍵字序列為(25,31,8,27,13,68),要求分別計(jì)算出用線性探測法和鏈地址法作為解決沖突方法的平均查找長度。數(shù)據(jù)結(jié)構(gòu)試卷(五)參考答案一、選擇題1.A2.B3.A4.A5.D6.B7.B8.B9.C10.C二、填空題1. 1.top1+1=top22. 2.可以隨機(jī)訪問到任一個頂點(diǎn)的簡單鏈表3. 3.i(i+1)/2+j-14. 4.FILO,FIFO5. 5.ABDECF,DBEAFC,DEBFCA6. 6.8,647. 7.出度,入度8.
31、8.ki=k2i&kik三、應(yīng)用題1. 1.DEBCA2. 2.E=(1,5),(5,2),(5,3),(3,4),W=103. 3.ASL=(1*1+2*2+3*4)/7=17/74. 4.ASL1=7/6,ASL2=4/3數(shù)據(jù)結(jié)構(gòu)試卷(六)、選擇題(30分)1.設(shè)一組權(quán)值集合W=2,3,4,5,6,則由該權(quán)值集合構(gòu)造的哈夫曼樹中帶權(quán)路徑長度之和為()。(D) 45(A)20(B)30(C)402 .執(zhí)行一趟快速排序能夠得到的序列是()。(A) 41,12,34,45,275572,63(B) 45,34,12,415572,63,27(C) 63,12,34,45,275541,72(D)
32、 12,27,45,415534,63,723 .設(shè)一條單鏈表的頭指針變量為head且該鏈表沒有頭結(jié)點(diǎn),則其判空條件是()。(A)head=0(B)head-next=0(C)head-next=head(D)head!=04 .時間復(fù)雜度不受數(shù)據(jù)初始狀態(tài)影響而恒為O(nlog2n)的是()。(A)堆排序(B)冒泡排序(C)希爾排序(D)快速排序5 .設(shè)二叉樹的先序遍歷序列和后序遍歷序列正好相反,則該二叉樹滿足的條件是()。(A)空或只有一個結(jié)點(diǎn)(B)高度等于其結(jié)點(diǎn)數(shù)(C)任一結(jié)點(diǎn)無左孩子(D)任一結(jié)點(diǎn)無右孩子6 .一趟排序結(jié)束后不一定能夠選出一個元素放在其最終位置上的是()。(A)堆排序(B
33、)冒泡排序(C)快速排序(D)希爾排序7 .設(shè)某棵三叉樹中有40個結(jié)點(diǎn),則該三叉樹的最小高度為()。(A)3(B)4(C)5(D)68 .順序查找不論在順序線性表中還是在鏈?zhǔn)骄€性表中的時間復(fù)雜度為()。(A)O(n)(B)O(n2)(C)O(n1/2)(D)O(1og2n)9 .二路歸并排序的時間復(fù)雜度為()。(A)O(n)(B)O(n2)(C)O(nlog2n)(D)O(1og2n)10 .深度為k的完全二叉樹中最少有()個結(jié)點(diǎn)。(A)2k-1-1(B)2k-1(C)2k-1+1(D)2k-111 .設(shè)指針變量front表示鏈?zhǔn)疥?duì)列的隊(duì)頭指針,指針變量rear表示鏈?zhǔn)疥?duì)列的隊(duì)尾指針,指針變量
34、s指向?qū)⒁腙?duì)列的結(jié)點(diǎn)X,則入隊(duì)列的操作序列為()。(A) front-next=s ; front=s ;(B) s-next=rear ; rear=s;(C) rear-next=s ; rear=s;(D) s-next=front ; front=s ;12 .設(shè)某無向圖中有n個頂點(diǎn)e條邊,(A) O(n+e)13 .設(shè)某哈夫曼樹中有(A) 9914 .設(shè)二叉排序樹上有(A) O(n)(B) O(n 2)則建立該圖鄰接表的時間復(fù)雜度為(C) O(ne)199個結(jié)點(diǎn),則該哈夫曼樹中有(B)100(C) 101(D) O(n 3)個葉子結(jié)點(diǎn)。(D) 102n個結(jié)點(diǎn),則在二叉排序樹上查找結(jié)
35、點(diǎn)的平均時間復(fù)雜度為(B) O(n 2)(C) O(nlog 2n)(D) O(1og 2n)15.設(shè)用鄰接矩陣A表示有向圖G的存儲結(jié)構(gòu),則有向圖G中頂點(diǎn)i的入度為(A)第i行非0元素的個數(shù)之和(B)第i列非0元素的個數(shù)之和(C)第i行0元素的個數(shù)之和(D)第i列0元素的個數(shù)之和二、判斷題(20分)1 .調(diào)用一次深度優(yōu)先遍歷可以訪問到圖中的所有頂點(diǎn)。()2 .分塊查找的平均查找長度不僅與索引表的長度有關(guān),而且與塊的長度有關(guān)。()3 .冒泡排序在初始關(guān)鍵字序列為逆序的情況下執(zhí)行的交換次數(shù)最多。()4 .滿二叉樹一定是完全二叉樹,完全二叉樹不一定是滿二叉樹。()5 .設(shè)一棵二叉樹的先序序列和后序序
36、列,則能夠唯一確定出該二叉樹的形狀。()6 .層次遍歷初始堆可以得到一個有序的序列。()7 .設(shè)一棵樹T可以轉(zhuǎn)化成二叉樹BT,則二叉樹BT中一定沒有右子樹。()8 .線性表的順序存儲結(jié)構(gòu)比鏈?zhǔn)酱鎯Y(jié)構(gòu)更好。()9 .中序遍歷二叉排序樹可以得到一個有序的序列。()10 .快速排序是排序算法中平均性能最好的一種排序。()三、填空題(30分)1 .for(i=1,t=1,s=0;i=n;i+)t=t*i;s=s+t;的時間復(fù)雜度為。2 .設(shè)指針變量p指向單鏈表中結(jié)點(diǎn)A,指針變量s指向被插入白新結(jié)點(diǎn)X,則進(jìn)行插入操作的語句序列為(設(shè)結(jié)點(diǎn)的指針域?yàn)閚ext)。3 .設(shè)有向圖G的二元組形式表示為G=(D,
37、R),D=1,2,3,4,5,R=r,r=,則給出該圖的一種拓?fù)渑判蛐蛄小? .設(shè)無向圖G中有n個頂點(diǎn),則該無向圖中每個頂點(diǎn)的度數(shù)最多是。5 .設(shè)二叉樹中度數(shù)為0的結(jié)點(diǎn)數(shù)為50,度數(shù)為1的結(jié)點(diǎn)數(shù)為30,則該二叉樹中總共有個結(jié)點(diǎn)數(shù)。6 .設(shè)F和R分別表示順序循環(huán)隊(duì)列的頭指針和尾指針,則判斷該循環(huán)隊(duì)列為空的條件為7 .設(shè)二叉樹中結(jié)點(diǎn)的兩個指針域分別為lchild和rchild,則判斷指針變量p所指向的結(jié)點(diǎn)為葉子結(jié)點(diǎn)的條件是。8 .簡單選擇排序和直接插入排序算法的平均時間復(fù)雜度為。9 .快速排序算法的空間復(fù)雜度平均情況下為,最壞的情況下為。10 .散列表中解決沖突的兩種方法是和。數(shù)據(jù)結(jié)構(gòu)試卷(六)參
38、考答案一、選擇題1. D2. A6. D7. B11. C 12. A 13. B3. A4. A8. A9. C14. D15. B5. D10. B、判斷題1.錯2.對6.錯7.對3.對 4.對 5.錯8.錯 9.對 10.對三、填空題1. 1.O(n)2. 2.s-next=p-next;p-next=s3. 3.(1,3,2,4,5)4. 4.n-15. 5.1296. 6.F=R7. 7.p-lchild=0&p-rchild=08. 8.O(n2)9. 9.O(nlog2n),O(n)10. 10.開放定址法,鏈地址法數(shù)據(jù)結(jié)構(gòu)試卷(七)一、選擇題(30分)1 .設(shè)某無向圖有n個頂點(diǎn)
39、,則該無向圖的鄰接表中有()個表頭結(jié)點(diǎn)。(A)2n(B)n(C)n/2(D)n(n-1)2 .設(shè)無向圖G中有n個頂點(diǎn),則該無向圖的最小生成樹上有()條邊。(A)n(B)n-1(C)2n(D)2n-13 .設(shè)一組初始記錄關(guān)鍵字序列為(60,80,55,40,42,85),則以第一個關(guān)鍵字45為基準(zhǔn)而得到的一趟快速排序結(jié)果是()。(A)40,42,60,55,80,85(B)42,45,55,60,85,80(C)42,40,55,60,80,85(D)42,40,60,85,55,804 .()二叉排序樹可以得到一個從小到大的有序序列。(A)先序遍歷(B)中序遍歷(C)后序遍歷(D)層次遍歷5
40、.設(shè)按照從上到下、從左到右的順序從1開始對完全二叉樹進(jìn)行順序編號,則編號為i結(jié)點(diǎn)的左孩子結(jié)點(diǎn)的編號為()。(A)2i+1(B)2i(C)i/2(D)2i-16 .程序段s=i=0;doi=i+1;s=s+i;while(inext=0(C)head-next=head(D)head!=08 .設(shè)某棵二叉樹的高度為10,則該二叉樹上葉子結(jié)點(diǎn)最多有()。(A)20(B)256(C)512(D)10249 .設(shè)一組初始記錄關(guān)鍵字序列為(13,18,24,35,47,50,62,83,90,115,134),則利用二分法查找關(guān)鍵字90需要比較的關(guān)鍵字個數(shù)為()。(A)1(B)2(C)3(D)410 .設(shè)指針變量top指向當(dāng)前鏈?zhǔn)綏5臈m?,則刪除棧頂元素的操作序列為()。(A)top=top+1;(B)top=top-1;(C)top-next=top;(D)top=top-next;三、填空題(30分)1. 1.設(shè)指針變量p指向雙向鏈表中的結(jié)點(diǎn)A,指針變量s指向被插入的結(jié)點(diǎn)X,則在結(jié)點(diǎn)A的后面插入結(jié)點(diǎn)X的操作序列為=p;s-right=p-right;=s;p-right-left=s;(設(shè)結(jié)點(diǎn)中的兩個指針域分別為left和right)。2. 2.設(shè)完全有向圖中有n個頂點(diǎn),則該完全有向圖中共有條有向條;設(shè)完全無向圖中有n個頂點(diǎn),則該完全無向圖中共有條無向邊。3. 3.設(shè)關(guān)鍵字序列為
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 課程設(shè)計(jì)師微課
- 衛(wèi)生潔具行業(yè)科技創(chuàng)新與零售應(yīng)用考核試卷
- 中藥批發(fā)企業(yè)的項(xiàng)目管理考核試卷
- 兔子的飼養(yǎng)與國際化標(biāo)準(zhǔn)對接考核試卷
- 塑料人造革的生態(tài)可持續(xù)發(fā)展模式研究考核試卷
- 保健品店市場競爭力提升策略研究與實(shí)踐成果考核試卷
- 食工原理課程設(shè)計(jì)致謝
- 課程設(shè)計(jì)怎么評分
- 硬筆書法教學(xué)課程設(shè)計(jì)
- 風(fēng)窗刮水課程設(shè)計(jì)
- 《直升機(jī)教材簡體》課件
- 2025年廣東汕頭市人大常委會辦公室招聘聘用人員3人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2024江蘇泗陽縣交通產(chǎn)業(yè)集團(tuán)招聘第一線操作人員招聘39人易考易錯模擬試題(共500題)試卷后附參考答案
- GB 19272-2024室外健身器材的安全通用要求
- 北師大版五年級數(shù)學(xué)下冊第3單元第3課時分?jǐn)?shù)乘法(三)課件
- 2025新外研社版英語七年級下單詞默寫表
- 金融軟件開發(fā)及維護(hù)合同
- 學(xué)校食堂菜譜及定價方案
- 變電一次設(shè)備標(biāo)準(zhǔn)缺陷庫
- (完整word版)師徒結(jié)對活動記錄表
- 研發(fā)準(zhǔn)備金制度企業(yè)研發(fā)準(zhǔn)備金制度范文2016
評論
0/150
提交評論