2023年全國(guó)高等教育自學(xué)考試數(shù)據(jù)結(jié)構(gòu)試題_第1頁(yè)
2023年全國(guó)高等教育自學(xué)考試數(shù)據(jù)結(jié)構(gòu)試題_第2頁(yè)
2023年全國(guó)高等教育自學(xué)考試數(shù)據(jù)結(jié)構(gòu)試題_第3頁(yè)
2023年全國(guó)高等教育自學(xué)考試數(shù)據(jù)結(jié)構(gòu)試題_第4頁(yè)
2023年全國(guó)高等教育自學(xué)考試數(shù)據(jù)結(jié)構(gòu)試題_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

全國(guó)2023年1月高等教育自學(xué)考試數(shù)據(jù)結(jié)構(gòu)試題一、單項(xiàng)選擇題(本大題共15小題,每小題2分,共30分)

在每小題列出的四個(gè)備選項(xiàng)中只有一個(gè)是符合題目規(guī)定的,請(qǐng)將其代碼填寫在題后的括號(hào)內(nèi)。錯(cuò)選、多選或未選均無(wú)分。

1.根據(jù)數(shù)據(jù)元素的關(guān)鍵字直接計(jì)算出該元素存儲(chǔ)地址的存儲(chǔ)方法是()

A.順序存儲(chǔ)方法

B.鏈?zhǔn)酱鎯?chǔ)方法

C.索引存儲(chǔ)方法

D.散列存儲(chǔ)方法2.下述程序段中語(yǔ)句①的頻度是()

s=0;

for(i=1;i<m;i++)

for(j=0;j<=i;j++)

s+=j;

A.(m+1)(m-1)/2

B.m(m-1)/2

C.(m+2)(m-1)/2

D.m(m+1)/23.求單鏈表中當(dāng)前結(jié)點(diǎn)的后繼和前驅(qū)的時(shí)間復(fù)雜度分別是()

A.O(n)和O(1)

B.O(1)和O(1)

C.O(1)和O(n)

D.O(n)和O(n)4.非空的單循環(huán)鏈表的頭指針為head,尾指針為rear,則下列條件成立的是()

A.rear->next==head

B.rear->next->next==head

C.head->next==rear

D.head->next->next==rear5.若允許表達(dá)式內(nèi)多種括號(hào)混合嵌套,則為檢查表達(dá)式中括號(hào)是否對(duì)的配對(duì)的算法,通常選用的輔助結(jié)構(gòu)是()

A.棧

B.線性表

C.隊(duì)列

D.二叉排序樹(shù)6.已知主串s=″ADBADABBAAB″,模式串t=″ADAB″,則應(yīng)用樸素的串匹配算法進(jìn)行模式匹配過(guò)程中,無(wú)效位移的次數(shù)是()

A.2

B.3

C.4

D.57.串s=″DataStructure″中長(zhǎng)度為3的子串的數(shù)目是()

A.9

B.11

C.12

D.148.假設(shè)以行優(yōu)先順序存儲(chǔ)三維數(shù)組R[6][9][6],其中元素R[0][0][0]的地址為2100,且每個(gè)元素占4個(gè)存儲(chǔ)單元,則存儲(chǔ)地址為2836的元素是()

A.R[3][3][3]

B.R[3][3][4]

C.R[4][3][5]

D.R[4][3][4]9.除第一層外,滿二叉樹(shù)中每一層結(jié)點(diǎn)個(gè)數(shù)是上一層結(jié)點(diǎn)個(gè)數(shù)的()

A.1/2倍

B.1倍

C.2倍

D.3倍10.對(duì)于含n個(gè)頂點(diǎn)和e條邊的圖,采用鄰接矩陣表達(dá)的空間復(fù)雜度為()

A.O(n)

B.O(e)

C.O(n+e)

D.O(n2)11.假如求一個(gè)連通圖中以某個(gè)頂點(diǎn)為根的高度最小的生成樹(shù),應(yīng)采用()

A.深度優(yōu)先搜索算法

B.廣度優(yōu)先搜索算法

C.求最小生成樹(shù)的prim算法

D.拓?fù)渑判蛩惴?2.快速排序在最壞情況下的時(shí)間復(fù)雜度是()

A.O(n2log2n)

B.O(n2)

C.O(nlog2n)

D.O(log2n)13.能進(jìn)行二分查找的線性表,必須以()

A.順序方式存儲(chǔ),且元素按關(guān)鍵字有序

B.鏈?zhǔn)椒绞酱鎯?chǔ),且元素按關(guān)鍵字有序

C.順序方式存儲(chǔ),且元素按關(guān)鍵字分塊有序

D.鏈?zhǔn)椒绞酱鎯?chǔ),且元素按關(guān)鍵字分塊有序14.為使平均查找長(zhǎng)度達(dá)成最小,當(dāng)由關(guān)鍵字集合{05,11,21,25,37,40,41,62,84}構(gòu)建二叉排序樹(shù)時(shí),第一個(gè)插入的關(guān)鍵字應(yīng)為()

A.05

B.37

C.41

D.6215.ISAM文獻(xiàn)的周期性整理是為了空出()

A.磁道索引

B.柱面索引

C.柱面基本區(qū)

D.柱面溢出區(qū)二、填空題(本大題共10小題,每小題2分,共20分)

請(qǐng)?jiān)诿啃☆}的空格中填上對(duì)的答案。錯(cuò)填、不填均無(wú)分。

16.?dāng)?shù)據(jù)類型按其值能否分解,通??煞譃開(kāi)________兩種類型。

17.隊(duì)列的修改是按_________的原則進(jìn)行的。

18.兩個(gè)串相等的充足必要條件是兩個(gè)串的長(zhǎng)度相等且_________。

19.?dāng)?shù)組采用順序存儲(chǔ)方式表達(dá)是由于通常不對(duì)數(shù)組進(jìn)行_________操作。

20.用廣義表的取表頭head和取表尾tail的運(yùn)算,從廣義表LS=(b,c,(f),((d)))中分解出原子c的操作為_(kāi)________。

21.結(jié)點(diǎn)數(shù)為20的二叉樹(shù)也許達(dá)期的最大高度為_(kāi)________。

22.帶權(quán)連通圖的生成樹(shù)的權(quán)是該生成樹(shù)上_________。

23.所謂“就地排序”,是指排序算法輔助空間的復(fù)雜度為_(kāi)________的排序方法。

24.5階B樹(shù)的根結(jié)點(diǎn)至少具有_________個(gè)關(guān)鍵字。

25.索引文獻(xiàn)中的索引表指示記錄的關(guān)鍵字與_________之間一一相應(yīng)的關(guān)系。三、解答題(本大題共4小題,每小題5分,共20分)

26.假設(shè)以有序?qū)?lt;p,c>表達(dá)從雙親結(jié)點(diǎn)到孩子結(jié)點(diǎn)的一條邊,若已知樹(shù)中邊的集合為{<a,b>,<a,d>,<a,c>,<c,e>,<c,f>,<c,g>,<c,h>,<e,i>,<e,j>,<g,k>},請(qǐng)回答下列問(wèn)題:

(1)哪個(gè)結(jié)點(diǎn)是根結(jié)點(diǎn)?

(2)哪些結(jié)點(diǎn)是葉子結(jié)點(diǎn)?

(3)哪些結(jié)點(diǎn)是k的祖先?

(4)哪些結(jié)點(diǎn)是j的兄弟?

(5)樹(shù)的深度是多少?

(1)

(2)

(3)

(4)

(5)

27.已知有向圖G的深度優(yōu)先生成森林和廣度優(yōu)先生成森林如下。請(qǐng)寫出該圖的深度優(yōu)先遍歷序列和廣度優(yōu)先遍歷序列。28.當(dāng)將兩個(gè)長(zhǎng)度均為n的有序表A=(a1,a2,…,an)與B=(b1,b2,…,bn)(ai≠bj,

1≤i,j≤n)歸并為一個(gè)有序表C=(c1,c2,…,c2n)時(shí),所需進(jìn)行的元素比較次數(shù)最少可達(dá)n,最多可達(dá)2n-1。

(1)假設(shè)有序表C=(2,4,5,6,7,9),試舉出兩組A與B的例子,使它們?cè)跉w并過(guò)程中進(jìn)行的元素比較次數(shù)分別達(dá)成最少和最多;

(2)寫出一般情況下,使歸并所需進(jìn)行的元素比較次數(shù)分別達(dá)成最少和最多時(shí),A與B中的元素應(yīng)滿足的條件。

(1)

(2)

29.對(duì)下列關(guān)鍵字序列(33,25,48,59,36,72,46,07,65,20)構(gòu)造表長(zhǎng)為19的散列表。假設(shè)散列函數(shù)為h(key)=key%13,用開(kāi)放地址法解決沖突,探查序列為d=h(key),d+12,d-12,d+22,d-22,d+32,d-32,…,等等。

(1)畫(huà)出該散列表;

(2)計(jì)算該散列表的裝填因子α;

(3)求出等概率情況下查找成功的平均查找長(zhǎng)度ASL。

(1)

(2)

(3)四、算法閱讀題(本大題共4小題,每小題5分,共20分)

30.已知head為帶頭結(jié)點(diǎn)的單循環(huán)鏈表的頭指針,鏈表中的數(shù)據(jù)元素依次為(a1,a2,a3,a4,…,an),A為指向空的順序表的指針。閱讀以下程序段,并回答問(wèn)題:

(1)寫出執(zhí)行下列程序段后的順序表A中的數(shù)據(jù)元素;

(2)簡(jiǎn)要敘述該程序段的功能。

if(head->next!=head)

{

p=head->next;

A->length=0;

while(p->next!=head)

{

p=p->next;

A->data[A->length++]=p->data;

if(p->next!=head)p=p->next;

}

}

(1)

(2)

31.已知鏈串的存儲(chǔ)結(jié)構(gòu)描述如下:

#defineNodeSize4

typedefstructNode{

chardata[NodeSize];

structNode*next;

}*LinkStr;

閱讀下列算法,并回答問(wèn)題:

(1)t1和t2的串值分別為″Chinese″和″China″時(shí),寫出f31(t1,t2)的返回值;

(2)t1和t2的串值分別為″Japan″和″Japanese″時(shí),寫出f31(t1,t2)的返回值;

(3)t1和t2的串值都為″string″時(shí),寫出f31(t1,t2)的返回值;

(4)簡(jiǎn)述函數(shù)f31的功能。

inff31(LinkStrt1,LinkStrt2)

{//串值以′′為結(jié)束符

inti;

while(1){

for(i=0;i<NodeSize;i++){

if(t1->data[i]==′′&&t2->data[i]==′′return0;

if(t1->data[i]==′′))return–1;

if(t2->data[i]==′′))return1;

if(t1->data[i]>t2->data[i]return1;

if(t1->data[i]<t2->data[i]return–1;

}

t1=t1->next;

t2=t2->next;

}

}

(1)

(2)

(3)

(4)

32.設(shè)二叉樹(shù)采用二叉鏈表存儲(chǔ)結(jié)構(gòu),結(jié)點(diǎn)的數(shù)據(jù)域data為字符類型。閱讀下列算法,并回答問(wèn)題:

(1)對(duì)于如圖所示的二叉樹(shù),寫出執(zhí)行函數(shù)f32的輸出結(jié)果;

(2)簡(jiǎn)述函數(shù)f32的功能。

voidf32(BinTreeT)

{Stacks;

//定義棧s

BinTreep,q;

if(T==NULL)return;

InitStack(&s);

p=T;

do{

while(p){

Push(&s,p);

if(p->lchild)p=p->lchild;

elsep=p->rchild;

}

while(!StackEmpty(s)&&q=StackTop(s)&&q->rchild==p){

p=Pop(&s);

printf(″%c″,p->data);

}

if(!StackEmpty(s)){

q=StackTop(s);

p=q->rchild;

}

}while(!StackEmpty(S));

}

(1)

(2)

33.已知有向圖的鄰接表表達(dá)的形式說(shuō)明如下:

#defineMaxNum

50

//圖的最大頂點(diǎn)數(shù)

typedefstructnode{

intadjvex;

//鄰接點(diǎn)域

structnode*next;

//鏈指針域

}EdgeNode;

//邊表結(jié)點(diǎn)結(jié)構(gòu)描述

typedefstruct{

charvertex;

//頂點(diǎn)域

EdgeNode*firstedge;

//邊表頭指針

}VertexNode;//頂點(diǎn)表結(jié)點(diǎn)結(jié)構(gòu)描述

typedefstruct{

VertexNodeadjlist[MaxNum];

//鄰接表

intn,e;

//圖中當(dāng)前的頂點(diǎn)數(shù)和邊數(shù)

}ALGraph;//鄰接表結(jié)構(gòu)描述

下列函數(shù)f33是從有向圖G中刪除所有以vi為弧頭的有向邊。請(qǐng)?jiān)诳杖碧幪钊牒线m的內(nèi)容,使其成為一個(gè)完整的算法。

voidf33(ALGraph*G,inti)

{intj;

EdgeNode*p,*q;

for(j=0;j<G->n;j=++){

p=G->adjlist[j].firstedge;

while(

(1)

{

q=p;

p=p->next;

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論