《數(shù)據(jù)結(jié)構(gòu)與算法》習(xí)題集_第1頁
《數(shù)據(jù)結(jié)構(gòu)與算法》習(xí)題集_第2頁
《數(shù)據(jù)結(jié)構(gòu)與算法》習(xí)題集_第3頁
《數(shù)據(jù)結(jié)構(gòu)與算法》習(xí)題集_第4頁
《數(shù)據(jù)結(jié)構(gòu)與算法》習(xí)題集_第5頁
已閱讀5頁,還剩168頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

《數(shù)據(jù)結(jié)構(gòu)與算法》習(xí)題集

一、單項(xiàng)選擇題

第1章概論

1.數(shù)據(jù)結(jié)構(gòu)是一門研究非數(shù)值計(jì)算的程序設(shè)計(jì)問題中計(jì)算機(jī)的(①)以及它們之間的(②)和

運(yùn)算等的學(xué)科。

①A.數(shù)據(jù)元素B.計(jì)算方法C.邏輯存儲(chǔ)D.數(shù)據(jù)映像

②A.結(jié)構(gòu)B.關(guān)系C.運(yùn)算D.算法

2.數(shù)據(jù)結(jié)構(gòu)被形式地定義為(K,R),其中K是(①)的有限集,R是K上的(②)的有限集。

①A.數(shù)據(jù)元素B.算法C.數(shù)據(jù)操作D.邏輯結(jié)構(gòu)

②A.操作B.映像C.存儲(chǔ)D.關(guān)系

3.在數(shù)據(jù)結(jié)構(gòu)中,從邏輯上看可以把數(shù)據(jù)結(jié)構(gòu)分成()。

A.動(dòng)態(tài)結(jié)構(gòu)和靜態(tài)結(jié)構(gòu)B.緊湊結(jié)構(gòu)和非緊湊結(jié)構(gòu)

C.線性結(jié)構(gòu)和非線性結(jié)構(gòu)D.內(nèi)部結(jié)構(gòu)和外部結(jié)構(gòu)

4.數(shù)據(jù)結(jié)構(gòu)在計(jì)算機(jī)內(nèi)存中的表示是指()。

A.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)B,數(shù)據(jù)結(jié)構(gòu)

C.數(shù)據(jù)的邏輯結(jié)構(gòu)D.數(shù)據(jù)元素之間的關(guān)系

5.在數(shù)據(jù)結(jié)構(gòu)中,與所使用的計(jì)算機(jī)無關(guān)的是數(shù)據(jù)的()結(jié)構(gòu)。

A.邏輯B.存儲(chǔ)C.邏輯和存儲(chǔ)D.物理

6.算法分析的目的是(①),算法分析的兩個(gè)主要方面是(②)。

①A.研究數(shù)據(jù)結(jié)構(gòu)的合理性B.研究算法中的輸入和輸出的關(guān)系

C.分析算法的效率以求改進(jìn)D.分析算法的易董性和文檔性

②A.空間復(fù)雜度和時(shí)間復(fù)雜度B.正確性和簡(jiǎn)明性

C.可讀性和文檔性D.數(shù)據(jù)復(fù)雜性和程序復(fù)雜性

7.算法指的是(①),它必須具有輸入、輸出和(②)等5個(gè)特性。

①A.計(jì)算方法B.排序方法C.解決問題的有限運(yùn)算序列D.調(diào)度方法

②A.可行性、可移植性和可擴(kuò)充性B.可行性、確定性和有窮性

C.確定性、有窮性和穩(wěn)定性D.易讀性、穩(wěn)定性和安全性

8.以下敘述中,正確的是()。

A.線性表的線性存儲(chǔ)結(jié)構(gòu)優(yōu)于鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)

B.二維數(shù)組是其數(shù)據(jù)元素為線性表的線性表

C.棧的操作方式是先進(jìn)先出

D.隊(duì)列的操作方式是先進(jìn)后出

9.在決定選取何種存儲(chǔ)結(jié)構(gòu)時(shí),一般不考慮()。

A.各結(jié)點(diǎn)的值如何B.結(jié)點(diǎn)個(gè)數(shù)的多少C.對(duì)數(shù)據(jù)有哪些運(yùn)算

D.所用編程語言實(shí)現(xiàn)這種數(shù)據(jù)結(jié)構(gòu)是否方便

10.在存儲(chǔ)數(shù)據(jù)時(shí).,通常不僅要存儲(chǔ)各數(shù)據(jù)元素的值,而且還要存儲(chǔ)()。

A.數(shù)據(jù)的處理方法B.數(shù)據(jù)元素的類型

C.數(shù)據(jù)元素之間的關(guān)系D.數(shù)據(jù)的存儲(chǔ)方法

11.下面說法錯(cuò)誤的是()。

(1)算法原地工作的含義是指不需要任何額外的輔助空間

(2)在相同的規(guī)模n下,復(fù)雜度O(n)的算法在時(shí)間上總是優(yōu)于復(fù)雜度0(2,的算法

(3)所謂時(shí)間復(fù)雜度是指最壞情況下,估算執(zhí)行時(shí)間的一個(gè)上界

(4)同一個(gè)算法,實(shí)現(xiàn)語句的級(jí)別越高,執(zhí)行效率越低

A.(1)B.⑴、(2)C.⑴、(4)D.(3)

12.通常要求同一邏輯結(jié)構(gòu)中的所有數(shù)據(jù)元素具有相同的特性,這意味著()。

A.數(shù)據(jù)元素具有同一■特點(diǎn)

B.不僅數(shù)據(jù)元素所包含的數(shù)據(jù)項(xiàng)的個(gè)數(shù)要相同,而且對(duì)應(yīng)的數(shù)據(jù)項(xiàng)的類型要一致

C.每個(gè)數(shù)據(jù)元素都一樣

D.數(shù)據(jù)元素所包含的數(shù)據(jù)項(xiàng)的個(gè)數(shù)要相等

13.以下說法正確的是()。

A.數(shù)據(jù)元素是數(shù)據(jù)的最小單位

B.數(shù)據(jù)項(xiàng)是數(shù)據(jù)的基本單位

C.數(shù)據(jù)結(jié)構(gòu)是帶結(jié)構(gòu)的各數(shù)據(jù)項(xiàng)的集合

D.一些表面上很不相同的數(shù)據(jù)可以有相同的邏輯結(jié)構(gòu)

14.算法的計(jì)算量的大小稱為計(jì)算的()。

A.效率B.復(fù)雜性C.現(xiàn)實(shí)性D.難度

15.算法的時(shí)間復(fù)雜度取決于()

A.問題的規(guī)模B.待處理數(shù)據(jù)的初態(tài)C.A和B

16.計(jì)算機(jī)算法指的是【1】,它必須具備【2】這三個(gè)特性。

(1)A.計(jì)算方法B.排序方法C.解決問題的步驟序列D.調(diào)度方

(2)A.可執(zhí)行性、可移植性、可擴(kuò)充性B.可執(zhí)行性、確定性、有窮性

C.確定性、有窮性、穩(wěn)定性D.易讀性、穩(wěn)定性、安全性

17.?個(gè)算法應(yīng)該是()。

A.程序B.問題求解步驟的描述

C.要滿足五個(gè)基本特性1).A和C.

18.下面關(guān)于算法說法錯(cuò)誤的是()

A.算法最終必須由計(jì)算機(jī)程序?qū)崿F(xiàn)

B.為解決某問題的算法同為該問題編寫的程序含義是相同的

C.算法的可行性是指指令不能有二義性D.以上幾個(gè)都是錯(cuò)誤的

19.下面說法錯(cuò)誤的是()

(1)算法原地工作的含義是指不需要任何額外的輔助空間

(2)在相同的規(guī)模n下,復(fù)雜度0(n)的算法在時(shí)間上總是優(yōu)于復(fù)雜度0(2”)的算法

(3)所謂時(shí)間復(fù)雜度是指最壞情況下,估算算法執(zhí)行時(shí)間的一個(gè)上界

(4)同一個(gè)算法,實(shí)現(xiàn)語言的級(jí)別越高,執(zhí)行效率就越低

A.(1)B.(1),(2)C.(1),(4)D.(3)

20.從邏輯上可以把數(shù)據(jù)結(jié)構(gòu)分為()兩大類。

A.動(dòng)態(tài)結(jié)構(gòu)、靜態(tài)結(jié)構(gòu)B.順序結(jié)構(gòu)、鏈?zhǔn)浇Y(jié)構(gòu)

C.線性結(jié)構(gòu)、非線性結(jié)構(gòu)D.初等結(jié)構(gòu)、構(gòu)造型結(jié)構(gòu)

21.以下與數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)無關(guān)的術(shù)語是()。

A.循環(huán)隊(duì)列B.鏈表C.哈希表D.棧

22.以下數(shù)據(jù)結(jié)構(gòu)中,哪一個(gè)是線性結(jié)構(gòu)()?

A.廣義表B.二叉樹C.稀疏矩陣D.串

23.以下那一個(gè)術(shù)語與數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)無關(guān)?()

A.棧B.哈希表C.線索樹D.雙向鏈表

24.在下面的程序段中,對(duì)x的賦值語句的頻度為()

FORi:=lTOnDO

FORj:=lTOnDO

x:=x+l;

A.0(2n)B.0(n)C.0(n2)D.O(logJ)

25.程序段FORi:=nTDOWNTO1DO

FORj:=lTOiDO

IFA[j]>A[j+l]

THENA[j]與A[j+1]對(duì)換;

其中n為正整數(shù),則最后一行的語句頻度在最壞情況下是()

A.0(n)B.O(nlogn)C.0(n3)D.0(n2)

26.以下哪個(gè)數(shù)據(jù)結(jié)構(gòu)不是多型數(shù)據(jù)類型()

A.棧B.廣義表C.有向圖D.字符串

27.以下數(shù)據(jù)結(jié)構(gòu)中,()是非線性數(shù)據(jù)結(jié)構(gòu)

A.樹B.字符串C.隊(duì)D.棧

28.下列數(shù)據(jù)中,()是非線性數(shù)據(jù)結(jié)構(gòu)。

A.棧B.隊(duì)列C.完全二叉樹D.堆

29.連續(xù)存儲(chǔ)設(shè)計(jì)時(shí),存儲(chǔ)單元的地址()。

A.一定連續(xù)B.一定不連續(xù)C.不一定連續(xù)D.部分連續(xù),部分不連續(xù)

30.以下屬于邏輯結(jié)構(gòu)的是()。

A.順序表B.哈希表C.有序表D.單鏈表

31.組成數(shù)據(jù)的基本單位是(

A.數(shù)據(jù)項(xiàng)B.數(shù)據(jù)類型C.數(shù)據(jù)元素D.數(shù)據(jù)變量

32.下列數(shù)據(jù)組織形式中,()的結(jié)點(diǎn)按邏輯關(guān)系依次排列形成一個(gè)“鎖鏈”。

A.集合B.樹形結(jié)構(gòu)

C.線性結(jié)構(gòu)D.圖狀結(jié)構(gòu)

33.數(shù)據(jù)結(jié)構(gòu)可以形式化地定義為(S,△),其中S指某種邏輯結(jié)構(gòu),△是指()

A.S上的算法B.S的存儲(chǔ)結(jié)構(gòu)

C.在S上的一個(gè)基本運(yùn)算集D.在S上的所有數(shù)據(jù)元素

34.算法分析的目的是()

A.找出數(shù)據(jù)結(jié)構(gòu)的合理性B.研究算法中的輸入/輸出關(guān)系

C.分析算法的效率以求改進(jìn)D.分析算法的易讀性

35.數(shù)據(jù)結(jié)構(gòu)是?門研究非數(shù)值計(jì)算的程序設(shè)計(jì)問題中計(jì)算機(jī)的⑴以及它們之間的⑵和運(yùn)算

等的學(xué)科。(

(1)A.操作對(duì)象Bo計(jì)算方法C。邏輯存儲(chǔ)1)。數(shù)據(jù)映象

(2)A.結(jié)構(gòu)Bo關(guān)系C?運(yùn)算Do算法

36.數(shù)據(jù)結(jié)構(gòu)被形容地定義為(K,R),其中K是(1)的有限集合,R是K上的(2)有限

集合。

(1)A.算法Bo數(shù)據(jù)元素Co數(shù)據(jù)操作Do邏輯結(jié)構(gòu)

(2)A.操作B。映象Co存儲(chǔ)D?關(guān)系

37.在數(shù)據(jù)結(jié)構(gòu)中,從邏輯上可以把數(shù)據(jù)結(jié)構(gòu)分成

(1)A.動(dòng)態(tài)結(jié)構(gòu)和靜態(tài)結(jié)構(gòu)Bo緊湊結(jié)構(gòu)和非緊湊結(jié)構(gòu)

C.線性結(jié)構(gòu)和非線性結(jié)構(gòu)D。內(nèi)部結(jié)構(gòu)和外部結(jié)構(gòu)

38.算法分析的目的是(1),算法分析的兩個(gè)主要方面是(2)。

(1)A.找出數(shù)據(jù)結(jié)構(gòu)的合理性B.研究算法中的輸入和輸出的關(guān)系

C.分析算法的效率以求改進(jìn)D.分析算法的易懂性和文檔性

(2)A.空間復(fù)雜性和時(shí)間復(fù)雜性B.正確性和簡(jiǎn)明性

C.可讀性和文檔性D.數(shù)據(jù)復(fù)雜性和程序復(fù)雜性

39.計(jì)算機(jī)算法指的是(1)大,它必具備輸入、輸出和(2)等五個(gè)特性。

(1)A.計(jì)算方法B。排序方法

C.解決問題的有限運(yùn)算序列D?調(diào)度方法

(2)A.可行性、可移植性和可擴(kuò)充性B.可行性、確定性和有窮性

C.確定性、有窮性和穩(wěn)定性D.易讀性、穩(wěn)定性和安全性

第2章線性表

1.線性表不具備的特點(diǎn)是()。

A.可隨機(jī)訪問任一結(jié)點(diǎn)B.插入刪除不需要移動(dòng)元素

C.不必事先估計(jì)存儲(chǔ)空間D.所需空間與其長(zhǎng)度成正比

2.不帶頭結(jié)點(diǎn)的單鏈表head為空的判定條件是()。

A.head==NULLB.head->next==NULL

C.head->next=headD.head!==NULL

3.帶頭結(jié)點(diǎn)的單鏈表head為空的判定條件是()。

A.head==NULLB.head->next==NULL

C.head->next=headD.head!==NULL

4.帶頭結(jié)點(diǎn)的雙循環(huán)鏈表L為空的條件是()。

A.L==NULLB.L->next==NULL

C.L->prior==NULLD.L->next==L

5.非空的循環(huán)單鏈表head的尾結(jié)點(diǎn)(由p所指向)滿足()。

A.p->next=NULLB.p==NULL

C.p->next==headD.p==head

6.在循環(huán)雙鏈表的p所指結(jié)點(diǎn)之前插入s所指結(jié)點(diǎn)的操作是()。

A.p->prior=s;s->next=p;p->prior->next=s;s->prior=p->prior;

B.p->prior=s;p->prior->next=s;s->next=p;s->prior=p->prior;

C.s->next=p;s->prior=p->prior;p->prior=s;p->right->next=s;

D.s->next=p;s->prior=p->prior;p->prior->next=s;p->prior=s;

7.若某表最常用的操作是在最后一個(gè)結(jié)點(diǎn)之后插入--個(gè)結(jié)點(diǎn)或刪除最后一個(gè)結(jié)點(diǎn),在采用

()存儲(chǔ)方式最節(jié)省運(yùn)算時(shí)間。

A.單鏈表B.給出表頭指針的單循環(huán)鏈表C.雙鏈表D.帶頭結(jié)點(diǎn)的雙循環(huán)鏈表

8.某線性標(biāo)最常用的操作是在最后一個(gè)結(jié)點(diǎn)之后插入一個(gè)結(jié)點(diǎn)或刪除第一個(gè)結(jié)點(diǎn),故采用

()存儲(chǔ)方式最節(jié)省運(yùn)算時(shí)間。

A.單鏈表B.僅有頭結(jié)點(diǎn)的單循環(huán)鏈表C.雙鏈表D.僅有為指針的單循環(huán)鏈表

9.需要分配不僅大空間,插入和刪除不需要移動(dòng)元素的線性表,其存儲(chǔ)結(jié)構(gòu)是()。

A.單鏈表B.靜態(tài)鏈表C.線性鏈表D.順序存儲(chǔ)結(jié)構(gòu)

10.如果最常用的操作是取第i個(gè)結(jié)點(diǎn)及其前驅(qū),在采用()存儲(chǔ)方式最節(jié)省時(shí)間。

A.單鏈表B.雙鏈表C.單循環(huán)鏈表D.順序表

11.在一個(gè)具有n個(gè)結(jié)點(diǎn)的有序單鏈表中插入一個(gè)新結(jié)點(diǎn)并仍然保持有序的時(shí)間復(fù)雜度是

()。

2

A.O(l)B.O(n)C.O(n)D.O(nlog2n)

12.在一個(gè)長(zhǎng)度為n(n>l)的單鏈表上,設(shè)有頭和尾兩個(gè)指針,執(zhí)行()操作與鏈表的長(zhǎng)

度有關(guān)。

A.刪除單鏈表中的第一個(gè)元素

B.刪除單鏈表中的最后一個(gè)元素

C.在單鏈表第一個(gè)元素前面插入一個(gè)新元素

D.在單鏈表最后一個(gè)元素后插入一個(gè)新元素

13.設(shè)線性表有n個(gè)元素,以下算法中,()在順序表上實(shí)現(xiàn)比在鏈表上實(shí)現(xiàn)效率更高。

A.輸出第i(0<=i<=n-l)個(gè)元素值

B.交換第0個(gè)元素與第1個(gè)元素的值

C.順序輸出這n個(gè)元素的值

D.輸出與給定值x相等的元素在線性表中的序號(hào)

14.設(shè)線性表中有2n個(gè)元素,算法(),在單鏈表上實(shí)現(xiàn)要比在順序表上實(shí)現(xiàn)效率更高.

A.輸出所有值為x的元素

B.在最后一個(gè)元素的后面插入一個(gè)新元素

C.順序輸出前k個(gè)元素

D.交換第i個(gè)元素和第2n-i-l個(gè)元素的值(i=0,l,...,n-l)

15.與單鏈表相比,雙鏈表的優(yōu)點(diǎn)之一是()。

A.插入、輸出操作更簡(jiǎn)單B.可以進(jìn)行隨機(jī)訪問

C.可以受理表頭指針或表尾指針D.順序訪問相鄰結(jié)點(diǎn)更靈活

16.如果對(duì)線性表的運(yùn)算只有四種,即刪除第一個(gè)元素,刪除最后一個(gè)元素,在第一個(gè)元素

的前面插入新元素,在最后一個(gè)元素的后面插入新元素,則最好使用()。

A.只有表尾指針沒有表頭指針的循環(huán)單鏈表

B.只有表尾指針沒有表頭指針的非循環(huán)雙鏈表

C.只有表頭指針沒有表尾指針的循環(huán)雙鏈表

D.既有表頭指針也有表尾指針的循環(huán)單鏈表

17.如果對(duì)線性表的運(yùn)算只有兩種,即刪除第一個(gè)元素,在最后一個(gè)元素的后面插入新元素,

最最好使用()o

A.只有表頭指針沒有表尾指針的循環(huán)單鏈表

B.只有表尾指針沒有表頭指針的循環(huán)單鏈表

C.非循環(huán)雙鏈表

D.循環(huán)雙鏈表

18.設(shè)有兩個(gè)長(zhǎng)度為n的單鏈表,結(jié)點(diǎn)類型相同。若以hl為表頭指針的鏈表是非循環(huán)鏈表,

以h2為表頭指針的鏈表是循環(huán)鏈表,則()。

A.對(duì)應(yīng)兩個(gè)鏈表來說,刪除第一個(gè)結(jié)點(diǎn)的操作,其時(shí)間復(fù)雜度都是0(1)

B.對(duì)應(yīng)兩個(gè)鏈表來說,刪除最好一個(gè)結(jié)點(diǎn)的操作,其時(shí)間復(fù)雜度都是0(n)

C循環(huán)鏈表要比非循環(huán)鏈表占用更多的存儲(chǔ)空間

D.hl和h2是不同類型的變量

19.在長(zhǎng)度為n的()上,刪除第一個(gè)元素,其算法的時(shí)間復(fù)雜度為0(n)。

A.只有表頭指針的不帶表頭結(jié)點(diǎn)的循環(huán)單鏈表

B.只有表尾指針的不帶表頭結(jié)點(diǎn)的循環(huán)單鏈表

C.只有表尾指針的帶表頭結(jié)點(diǎn)的循環(huán)單鏈表

D.只有表頭指針的帶表頭結(jié)點(diǎn)的循環(huán)單鏈表

20.下述哪一?條是順序存儲(chǔ)結(jié)構(gòu)的優(yōu)點(diǎn)?()

A.存儲(chǔ)密度大B.插入運(yùn)算方便C.刪除運(yùn)算方便

D.可方便地用于各種邏輯結(jié)構(gòu)的存儲(chǔ)表示

21.下面關(guān)于線性表的敘述中,錯(cuò)誤的是哪一個(gè)?()

A.線性表采用順序存儲(chǔ),必須占用一片連續(xù)的存儲(chǔ)單元。

B.線性表采用順序存儲(chǔ),便于進(jìn)行插入和刪除操作。

C.線性表采用鏈接存儲(chǔ),不必占用一片連續(xù)的存儲(chǔ)單元。

D.線性表采用鏈接存儲(chǔ),便于插入和刪除操作。

22.線性表是具有nj()的有限序列(n>0)。

A.表元素B.字符C.數(shù)據(jù)元素D.數(shù)據(jù)項(xiàng)E.信息項(xiàng)

23.若某線性表最常用的操作是存取任一指定序號(hào)的元素和在最后進(jìn)行插入和刪除運(yùn)算,則

利用()存儲(chǔ)方式最節(jié)省時(shí)間。

A.順序表B.雙鏈表C.帶頭結(jié)點(diǎn)的雙循環(huán)鏈表D.單循環(huán)鏈表

24.某線性表中最常用的操作是在最后一個(gè)元素之后插入一個(gè)元素和刪除第一個(gè)元素,則采

用()存儲(chǔ)方式最節(jié)省運(yùn)算時(shí)間。

A.單鏈表B.僅有頭指針的單循環(huán)鏈表

C.雙鏈表D.僅有尾指針的單循環(huán)鏈表

25.設(shè)一個(gè)鏈表最常用的操作是在末尾插入結(jié)點(diǎn)和刪除尾結(jié)點(diǎn),則選用()最節(jié)省時(shí)間。

A.單鏈表B.單循環(huán)鏈表C.帶尾指針的單循環(huán)鏈表D.帶頭結(jié)點(diǎn)的雙循環(huán)鏈表

26.若某表最常用的操作是在最后一個(gè)結(jié)點(diǎn)之后插入一個(gè)結(jié)點(diǎn)或刪除最后一個(gè)結(jié)點(diǎn)。則采用

()存儲(chǔ)方式最節(jié)省運(yùn)算時(shí)間。

A.單鏈表B.雙鏈表C.單循環(huán)鏈表D.帶頭結(jié)點(diǎn)的雙循環(huán)鏈表

27.靜態(tài)鏈表中指針表示的是().

A.內(nèi)存地址B.數(shù)組下標(biāo)C.下一元素地址D.左、右孩子地址

28.鏈表不具有的特點(diǎn)是()。

A.插入、刪除不需要移動(dòng)元素B.可隨機(jī)訪問任一元素

C.不必事先估計(jì)存儲(chǔ)空間D.所需空間與線性長(zhǎng)度成正比

29.下面的敘述不正確的是()。

A.線性表在鏈?zhǔn)酱鎯?chǔ)時(shí),查找第i個(gè)元素的時(shí)間同i的值成正比

B.線性表在鏈?zhǔn)酱鎯?chǔ)時(shí),查找第i個(gè)元素的時(shí)間同i的值無關(guān)

C.線性表在順序存儲(chǔ)時(shí),查找第i個(gè)元素的時(shí)間同i的值成正比

D.線性表在順序存儲(chǔ)時(shí),查找第i個(gè)元素的時(shí)間同i的值無關(guān)

30.線性表的表元存儲(chǔ)方式有((1))鏈接兩種。試指出下列各表中使用的是何種存儲(chǔ)方式:

表1是(2)存儲(chǔ)方式;表2是(3)存儲(chǔ)方式;表3是(4)存儲(chǔ)方式;表4是(5)存儲(chǔ)方

式。表左的s指向起始表元。

表1

表元編號(hào)貨號(hào)數(shù)量表元間聯(lián)系

1618402

220523

3103154

4501205

5781176

6910240

表2

表元編號(hào)貝化甘n數(shù)量表元間聯(lián)系

1618405

220521

3103154

4501202

5781176

6910243

表3

表元編號(hào)貨號(hào)數(shù)量表元間聯(lián)系

1618405

220521

3103154

4501200

5781176

6910243

表4

表元編號(hào)貨號(hào)數(shù)量表元間聯(lián)系

12

16184052

2205210

31031546

45012003

57811761

69102435

供選擇的答案:

A.連續(xù)B.單向鏈接C.雙向鏈接D.不連接E.循環(huán)鏈接

F.樹狀G.網(wǎng)狀H.隨機(jī)I.順序J.順序循環(huán)

31.(1)靜態(tài)鏈表既有順序存儲(chǔ)的優(yōu)點(diǎn),又有動(dòng)態(tài)鏈表的優(yōu)點(diǎn)。所以,它存取表中第i個(gè)元素

的時(shí)間與i無關(guān)。

(2)靜態(tài)鏈表中能容納的元素個(gè)數(shù)的最大數(shù)在表定義時(shí)就確定了,以后不能增加。

(3)靜態(tài)鏈表與動(dòng)態(tài)鏈表在元素的插入、刪除上類似,不需做元素的移動(dòng)。

以上錯(cuò)誤的是()o

A.(1),(2)B.(1)C.(1),(2),(3)D.(2)

32.若長(zhǎng)度為n的線性表采用順序存儲(chǔ)結(jié)構(gòu),在其第i個(gè)位置插入一個(gè)新元素的算法的時(shí)間

復(fù)雜度為()(l<=i〈=n+l)。

A.0(0)B.0(1)C.0(n)D.0(n2)

33.對(duì)于順序存儲(chǔ)的線性表,訪問結(jié)點(diǎn)和增加、刪除結(jié)點(diǎn)的時(shí)間復(fù)雜度為()。

A.0(n)0(n)B.0(n)0(1)C.0(1)0(n)D.0(1)0(1)

34.線性表(al,a2,…,an)以鏈接方式存儲(chǔ)時(shí),訪問第i位置元素的時(shí)間復(fù)雜性為()

A.0(i)B.0(1)C.0(n)D.0(i-1)

35.非空的循環(huán)單鏈表head的尾結(jié)點(diǎn)指針p滿足()。

A.p->link=headB.p->link二NILC.p=NILD.p=head

36.循環(huán)鏈表H的尾結(jié)點(diǎn)P的特點(diǎn)是()。

A.P->NEXT=HB.P->NEXT=H->NEXTC.P=HD.P=H->NEXT

37.在一個(gè)以h為頭的單循環(huán)鏈中,p指針指向鏈尾的條件是().

A.p->next=hB.p->next=NULLC.p->next->next=hD.p->data=-l

38.在雙向鏈表指針p的結(jié)點(diǎn)前插入一個(gè)指針q的結(jié)點(diǎn)操作是()。

A.p->Llink=q;q->Rlink=p;p->Llink->R1ink=q;q->Llink=q;

B.p->Llink=q;p->Llink->Rlink=q;q->Rlinkup;q->Llink=p->Llink;

C.q->Rlink=p;q->L1ink=p->L1ink;p->L1ink->Rlink二q;p->Llink=q;

D.q->Llink=p->Llink;q->Rlink=q;p->Llink=q;p->Llink=q;

39.在單鏈表指針為p的結(jié)點(diǎn)之后插入指針為s的結(jié)點(diǎn),正確的操作是:()。

A.p->next=s;s->next=p->next;B.s->next=p->next;p->next=s;

C.p->next=s;p->next=s_>next;D.p->next=s->next;p->next=s;

40.對(duì)于一個(gè)頭指針為head的帶頭結(jié)點(diǎn)的單鏈表,判定該表為空表的條件是()

A.head==NULLB.headnext-NULLC.head-*next-headD.head!=NULL

41.在一個(gè)單鏈表中,已知q所指結(jié)點(diǎn)是p所指結(jié)點(diǎn)的前驅(qū),若在p、q之間插入s結(jié)點(diǎn),則

執(zhí)行(B)操作。

A、s->next=p-next;p->next=s;B、q->next=s;s->next=p;

C、p->next=s->next;s->next=p;p->next=s;s->next=q;

42、使用雙向鏈表存儲(chǔ)數(shù)據(jù),其優(yōu)點(diǎn)是可以(A)。

A、提高檢索速度B、很方便地插入和刪除數(shù)據(jù)

C、節(jié)約存儲(chǔ)空間D、很快回收存儲(chǔ)空間

43、單鏈表中,增加頭結(jié)點(diǎn)的目的是為了(A)o

A、方便運(yùn)算的實(shí)現(xiàn)B、標(biāo)識(shí)單鏈表

C、使單鏈表中至少有一個(gè)結(jié)點(diǎn)1)、用于標(biāo)識(shí)起始結(jié)點(diǎn)的位置

若某線性表中最常用的操作是取第i個(gè)元素和找第i個(gè)元素的前趨元素,則采用(D)存

儲(chǔ)方式最節(jié)省時(shí)間。

A、單鏈表B、雙鏈表C、單向循環(huán)鏈表D、順序表

44、帶頭結(jié)點(diǎn)的單鏈表h為空的判斷條件是(B

A>h==NULLB、h->next==NULLC、h->next=hD、h!=NULL

45.線性表的鏈接實(shí)現(xiàn)有利于()運(yùn)算。

A.插入B.讀表元素C.查找D.定位

46.設(shè)單鏈表中指針P指著結(jié)點(diǎn)A,若要?jiǎng)h除A之后結(jié)點(diǎn)(若存在),則需要修改指針的操

作為(

A.p->next=p->next->nextB.p=p->next

C.p=p->next->nextD.P->next=p

47.設(shè)雙鏈表中結(jié)點(diǎn)的前趨指針和后繼指針的域名分別為tl和rl,則刪除雙鏈表中指針s

所指結(jié)點(diǎn)的操作為()

A.s->tl->rl=s->t1;s->rl->tl=s->rl;B.s->tl->rl=s->rl;s->rl->tl=s->t1;

C.s->rl=s->tl->r1;s->t1=s->r->t1;D.s->tl=s->t1->r1;s->rl=s->r->tl;

48.假設(shè)left和right為雙向鏈表中指向直接前趨結(jié)點(diǎn)和直接后繼結(jié)點(diǎn)的指針域,現(xiàn)要把一

個(gè)指針s所指的新結(jié)點(diǎn)作為非空雙鏈表中q所指地點(diǎn)(中間結(jié)點(diǎn))的直接后繼結(jié)點(diǎn)插入到該

雙向鏈表中,則下列算法段能正確完成上述要求的是()

A.q->right=s;s->left=q;q->right->left=s;s->right=q->right;

B.s->left=q;q->right=s;q->right->left=s;s->right=q->right;

C.s->left=q;s->right=q->right;q->right->left=s;q->right=s;

D.以上都不對(duì)

49.下列說法正確的是()

A.線性表的邏輯順序與存儲(chǔ)順序總是一致的

B.線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中,要求內(nèi)存中可用的存儲(chǔ)單元可以是連續(xù)的,也可以不連續(xù)

C.線性表的線性存儲(chǔ)結(jié)構(gòu)優(yōu)于鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)

D.每種數(shù)據(jù)結(jié)構(gòu)都具有插入、刪除和查找三種基本運(yùn)算

50.設(shè)非空單鏈表的數(shù)據(jù)域?yàn)閐ata,指針域?yàn)閚ext,指針p指向單鏈表中第i個(gè)結(jié)點(diǎn),s

指向已生成的新結(jié)點(diǎn),現(xiàn)將s結(jié)點(diǎn)插入到單鏈表中,使其成為第i個(gè)結(jié)點(diǎn),下列算法段

能正確完成上述要求的是()

A.s->next=p->next;p->next=s;

B.p->next=s;s->next=p->next;

C.s->next=p->next;p->next=s;交換p->data和s->data;

D.p=s;s->next=p;

51.下面關(guān)于線性表的敘述中,錯(cuò)誤的為()

A.順序表使用一維數(shù)組實(shí)現(xiàn)的線性表B.順序表必須占用一片連續(xù)的存儲(chǔ)單元

C.順序表的空間利用率高于鏈表D.在鏈表中,每個(gè)結(jié)點(diǎn)只有一個(gè)鏈域

52.帶頭結(jié)點(diǎn)的單鏈表head為空的判斷條件是()

A.head=NILB.headt.next=NIL

C.headt.next=headD.head<>NIL

53.一個(gè)順序表所占用的存儲(chǔ)空間大小與——無關(guān)?

A.表的長(zhǎng)度B.元素的存放順序C.元素的類型D。元素中各字段的類型

54.設(shè)存儲(chǔ)分配是從低地址到高地址進(jìn)行的。若每個(gè)元素占用4個(gè)存儲(chǔ)單元,則某元素的地

址是指它所占用的單元的

A.第1個(gè)單元的地址B.第2個(gè)單元的地址

C.第3個(gè)單元的地址n第4個(gè)單元的地址

55.若線性表采用順序存儲(chǔ)結(jié)構(gòu),每個(gè)元素占用4個(gè)存儲(chǔ)單元,第1個(gè)元素的存儲(chǔ)地址為

100,則第12個(gè)元素的存儲(chǔ)地址是o

A.112B.144C.1480.412

56.若長(zhǎng)度為n的線性表采用順序存儲(chǔ)結(jié)構(gòu),在表的第i個(gè)位置插入一個(gè)數(shù)據(jù)元素,i的合

法值

應(yīng)該是——。

A.i>0B.iWnC.IWiWnD.IWiWn+l

57.若長(zhǎng)度為n的非空線性表采用順序存儲(chǔ)結(jié)構(gòu),刪除表的第i個(gè)數(shù)據(jù)元素,i的合法值應(yīng)

該是

A.i>0B.iWnC.IWiWnD。IWiWn十1

58.若長(zhǎng)度為n的非空線性表采用順序存儲(chǔ)結(jié)構(gòu),刪除表的第i個(gè)數(shù)據(jù)元素,首先需要移動(dòng)

中——個(gè)數(shù)據(jù)元素。

A.n-iB.n+iC.n-i+1D.n-i-1

59.若長(zhǎng)度為n的線性表采用順序存儲(chǔ)結(jié)構(gòu),在表的第i個(gè)位置插入一個(gè)數(shù)據(jù)元素,需要移

動(dòng)

表中——個(gè)元素。。

A.iB.n+iC.n-i+1D.n-i-1

60.若頻繁地對(duì)線性表進(jìn)行插入和刪除操作,該線性表應(yīng)該采用——存儲(chǔ)結(jié)構(gòu)。

A.散列B.順序C.鏈?zhǔn)紻.索引

61.鏈表中所占用的存儲(chǔ)單元地址一定是。

A.無序的B.連續(xù)的C.不連續(xù)的D.部分連續(xù)的

62.鏈表中的每一個(gè)鏈結(jié)點(diǎn)所占用的存儲(chǔ)單元——。

A.不必連續(xù)B.一定連續(xù)C.部分連續(xù)D.連續(xù)與否無所謂

63.與單鏈表相比,雙向鏈表的優(yōu)點(diǎn)之一是。

A.插入、刪除操作更簡(jiǎn)單B.可以進(jìn)行隨機(jī)訪問

C.可以省略頭結(jié)點(diǎn)指針I(yè)).順序訪問相鄰結(jié)點(diǎn)更靈活

64.若list是某帶頭結(jié)點(diǎn)的循環(huán)鏈表的頭結(jié)點(diǎn)指針,則該鏈表最后那個(gè)鏈結(jié)點(diǎn)的指針域中

放的是——?

A.list的地址B.list的內(nèi)容

C.list指的鏈結(jié)點(diǎn)的值I).鏈表第一個(gè)鏈結(jié)點(diǎn)的地址

65.若list是某帶頭結(jié)點(diǎn)的循環(huán)鏈表的頭結(jié)點(diǎn)指針,當(dāng)p(p與list同類型)指向鏈表的最

后那

個(gè)鏈結(jié)點(diǎn)時(shí),——。

A.該結(jié)點(diǎn)的指針域?yàn)榭誃.p為空

C.p的內(nèi)容與頭結(jié)點(diǎn)的內(nèi)容相同D.該鏈結(jié)點(diǎn)指針域內(nèi)容與list的內(nèi)容相同

66.若listl和list2分別為一個(gè)單鏈表與一個(gè)雙向鏈表的第一個(gè)結(jié)點(diǎn)的指針,則——。

A.Iist2比listl占用更多的存儲(chǔ)單元B.listl與list2占用相同的存儲(chǔ)單元

C.listl和list2應(yīng)該是相同類型的指針變量D.雙向鏈表比單鏈表占用更多的存儲(chǔ)單

67.在表達(dá)式中,符號(hào)p->link表不--。

A.p所指的鏈結(jié)點(diǎn)的指針域(位置)

B.p所指的鏈結(jié)點(diǎn)的指針域的內(nèi)容

C.p所指的鏈結(jié)點(diǎn)的下一個(gè)鏈結(jié)點(diǎn)的地址

I),p所指的鏈結(jié)點(diǎn)的下一個(gè)鏈結(jié)點(diǎn)的地址(出現(xiàn)在表達(dá)式中)

68.在一個(gè)具有n個(gè)鏈結(jié)點(diǎn)的線性鏈表中查找某個(gè)鏈結(jié)點(diǎn),若查找成功,需要平均比較

——個(gè)鏈結(jié)點(diǎn)。

A.nB.n/2C.(n+1)/2D.(n-1)/Q

69.從一個(gè)具有n個(gè)鏈結(jié)點(diǎn)的有序線性鏈表(即鏈結(jié)點(diǎn)按照數(shù)據(jù)域值有序鏈接)中插入一個(gè)

新的鏈結(jié)點(diǎn),并且仍然保持鏈表有序的時(shí)間復(fù)雜度為——。

A.0(1)B.0(n)C.0(n(2))D.0(log2(n))

70.給定具有n個(gè)元素的順序表,建立一個(gè)有序線性鏈表的時(shí)間復(fù)雜度為一一。

A.0(1)B.0(n)C.0(n(2))D.0(log2(n))

71.在非空線性鏈表中由p所指的鏈結(jié)點(diǎn)后面插入一個(gè)由q所指的鏈結(jié)點(diǎn)的過程是依次執(zhí)

行----。

A.q->link=p;p->link=q;B.q->link=p->link;p->link=q;

C.q->link=p->link;p=q;D.p->link=q;q->link=p;

72.若刪除非空線性鏈表中由p所指的鏈結(jié)點(diǎn)的直接后繼鏈結(jié)點(diǎn)的過程是依次執(zhí)行

A.r=p->link;p->link=r;free(r);

B.r=p->link;p->link=r->link;free(r);

C.r=p->link;p->link=r->link;free(p);

D.p->link=p->link->link;free(p);

73.在非空雙向循環(huán)鏈表中由q所指的鏈結(jié)點(diǎn)后面插入一個(gè)由p所指的鏈結(jié)點(diǎn)的動(dòng)作依次

為:p->llink=Q;p->rlink=q->rlink;q->rlink=p;----。(空白處為一條賦值

語句)

A.q->llink=pB.q->rlink->llink=p

C.p->fiink->l1ink=pD.p->l1ink->l1ink=p

74.在非空雙向循環(huán)鏈表中由q所指的那個(gè)鏈結(jié)點(diǎn)前面插入一個(gè)p所指的鏈結(jié)點(diǎn)的動(dòng)作對(duì)

應(yīng)的語句依次為:p->rlink=Q;p->llink=q->llink;q->[link=p;----,(空白

處為一條賦值語句)

A.q->rlink=p;B.q->llink->rlink=p;

C.p->rlink->rlink=p;D.p->l1ink->rlink=p;

75.在包含有1000個(gè)數(shù)據(jù)元素的線性表中實(shí)現(xiàn)如下四個(gè)操作,所需要的執(zhí)行時(shí)間最長(zhǎng)的是

—0

A.線性表采用順序存儲(chǔ)結(jié)構(gòu),在第10個(gè)元素后面插入一個(gè)新的元素

B.線性表采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu),在第10個(gè)元素后面插入一個(gè)新的元素

C.線性表采用順序存儲(chǔ)結(jié)構(gòu),刪除第990個(gè)元素

D.線性表采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu),刪除p所指的鏈結(jié)點(diǎn)

76.不帶頭結(jié)點(diǎn)的單鏈表head為空的判定條件是3)。

A.head=NULLB.head->next=NULLC.head->next=headD.head!=NULL

77.帶頭結(jié)點(diǎn)的單鏈表head為空的判定條件是(1)。

A.head=NULLB.head->next=NULLC.head->next=headD.!=NULL

78.非空的循環(huán)單鏈表head的尾結(jié)點(diǎn)(由P所指向)滿足(1)。

A.p->next=NULLB.p=NULLC.p->next=headD.p=head

79.在循環(huán)雙鏈表的p所指結(jié)點(diǎn)之后插入S所指向的結(jié)點(diǎn)的操作是(1)。

A.p->right=s;s->left=p;p->right->left=s;s->right=p->right;

B.p->right=s;p->right->left=s;s->left=p;s->right=p->right;

C.s->left=p;s->right=p->right;p->right=s;p->right->left=s;

D.s->left=p;s->right=p->right;p->right->left=s;p->right=s;

80.在一個(gè)單鏈表中,已知p所指結(jié)點(diǎn)是前驅(qū)結(jié)點(diǎn),若在q和p之間插入S結(jié)點(diǎn),則執(zhí)行(1)。

A.s->next=p->next;p->next=s;B.p->next=s->next;s->next=p;

C.q->next=s;s->next=p;D.p->next=s;s->next=q;

81.在一個(gè)單鏈表中,若p所指結(jié)點(diǎn)不是最后結(jié)點(diǎn),在p之后插入S所指結(jié)點(diǎn),則執(zhí)行(l)o

A.s->next=p;p->next=s;B.s->next=p->next;p->next=s;

C.s->next=p->next;p=s;D.p->next=s;s->next=p;

82.在一個(gè)單鏈表中,若刪除P所指結(jié)點(diǎn)的后續(xù)結(jié)點(diǎn),剛執(zhí)行(1)。

A.p-next=p->next->next;B.p=p->next;p->next=p->next->next;

C.p->next=p->next;D.p=p->next->next;

83.假設(shè)雙鏈表結(jié)點(diǎn)的類型如下:

Typedefstructlinknode

Intdata;/*數(shù)據(jù)域*/

Structlinknode*llink;/*llink是指向前驅(qū)結(jié)點(diǎn)的指針域*/

Structlinknode*rlink/*rlink是指向后續(xù)結(jié)點(diǎn)的指針域*/

}bnode

下面給出的算法段是要把一個(gè)q所指新結(jié)點(diǎn)作為非空雙向鏈表中的P所指結(jié)點(diǎn)的前驅(qū)結(jié)點(diǎn)插

入到該雙鏈表中,能正確完成要求的算法段是(1)。

A.q->rlink=p;

q->llink=p->llink;

p->llink=q;

p->llink->rlink=q;

B.p->llink=q;

q->rlink=p;

p->Hink->r1ink=q;

q->llink=p->llink;

C.q->Hink=p->llink;

q->rlink=p;

p->Hink->rlink=q;

p->llink=q;

D.以上都不對(duì)

第3章棧和隊(duì)列

1.棧的特點(diǎn)是(①)列的特點(diǎn)是(②)。

A.先進(jìn)先出B.先進(jìn)后出

2.棧和隊(duì)列的共同點(diǎn)是()。

A.都是先進(jìn)后出B.都是先進(jìn)先出

C.只允許在端點(diǎn)插入和刪除元素D.沒有共同點(diǎn)

3.?個(gè)棧的進(jìn)棧序列是a,b,c,d,e,則棧不可能的輸出序列是()o

A.edcbaB.decbaC.dceabD.abcde

4.若已知一個(gè)棧的進(jìn)棧序列是1,2,3,…,n,其輸出序列為pi,p2,p3,…,Pn,若pi=n,則pi(k=ivn)

為()。

A.iB.n=iC.n-i+1D.不確定

5.若已知一個(gè)棧的進(jìn)棧序列是1,2,3.n,其輸出序列為pi,p2,p3,…,Pn,若Pn=n,則pi(l<=i<n)

為()。

A.iB.n=iC.n-i+1D.不確定

6.若已知一個(gè)棧的進(jìn)棧序列是1,2,3.n,其輸出序列為P|,P2,P3,…,Pn,若Pl=l,則P2為()。

A.可能是2B.不一定是2C.可能是1D.一定是1

7.若已知一個(gè)棧的進(jìn)棧序列是1,2,3,其輸出序列為pi,p2,p3,…,p”若p3=l,則Pi為

()。

A.可能是2B.一定是2C.不可能是2D.不可能是3

8.若已知一個(gè)棧的進(jìn)棧序列是Pl,P2,P3,...,Pn,輸出序列是1,2,3,..,110若Pn=l,則Pi(l<=i<n)

為()。

A.n-i+1B.n-iC.iD.有多種可能

9.判定一個(gè)棧ST(最多元素為MaxSize)為空的條件是()。

A.ST->top!=-1B.ST->top==-l

C.ST->top!=MaxSize-1D.ST->top=MaxSize-l

10.判定一個(gè)棧ST(最多元素為MaxSize)棧滿的條件是()。

A.ST->top!=-lB.ST->top==-l

C.ST->top!=MaxSize-lD.ST->top==MaxSize-l

11.最不適合用作鏈枝的鏈表是()0

A.只有表頭指針沒有表尾指針的循環(huán)雙鏈表

B.只有表尾指針沒有表頭指針的循環(huán)雙鏈表

C.只有表尾指針沒有表頭指針的循環(huán)單鏈表

D.只有表頭指針沒有表尾指針的循環(huán)單鏈表

12.向一個(gè)棧頂指針為HS的鏈棧中插入一個(gè)S所指結(jié)點(diǎn)時(shí),則執(zhí)行()。

A.HS->next=S;B.S->next=HS->next;HS->next=S;

C.S->next=HS;HS=S;D.S->next=HS;HS=HS->next;

13.從一個(gè)棧頂指針為HS的鏈棧中輸出一個(gè)結(jié)點(diǎn)時(shí),用x表層被刪除結(jié)點(diǎn)的值,則執(zhí)行

()。

A.x=HS;HS=HS->next;B.x=HS->data;

C.HS=HS->next;x=HS->data;D.x=HS->data;HS=HS->next;

14.一個(gè)隊(duì)列的入隊(duì)序列是1,2,3,4,則隊(duì)列的輸出序列是()。

A.4,3,2,1B.1,2,3,4C.1,4,3,2D.3,2,4,1

15.判定一個(gè)隊(duì)列QU(最多有MaxSize個(gè)元素)為空的條件是()。

A.QU->rear-QU->front==MaxSizeB.QU->rear-QU->front-l==MaxSize

C.QU->front==QU->rearD.QU->front==QU->rear+1

16.判定一個(gè)隊(duì)列QU(最多有MaxSize個(gè)元素)隊(duì)滿件是()。

A.QU->rear-QU->front==MaxSizeB.QU->rear-QU->front-l==MaxSize

C.QU->front==QU->rearD.QU->front==QU->rear+1

17.循環(huán)順序隊(duì)列中是否可以插入下一個(gè)元素,()。

A.與對(duì)隊(duì)頭指針和隊(duì)尾指針的值有關(guān)

B.只與隊(duì)尾指針的值有關(guān),與隊(duì)頭指針的值無關(guān)

C只與數(shù)組的大小有關(guān),與隊(duì)首指針和隊(duì)尾指針的值無關(guān)

D.與曾經(jīng)進(jìn)行多少次插入操作有關(guān)

18.判定一個(gè)循環(huán)隊(duì)列QU(最多有MaxSize個(gè)元素)為空的條件是()。

A.QU->front==QU->rearB.QU->front!=QU->rear

C.QU->front==(QU->rear+1)%MaxSizeD.QU->front!=(QU->rear+1)%MaxSize

19.判定一個(gè)循環(huán)隊(duì)列QU(最多有MaxSize個(gè)元素)隊(duì)滿的條件是()。

A.QU->front==QU->rearB.QU->front!=QU->rear

C.QU->front==(QU->rear+l)%MaxSizeD.QU->front!=(QU->rear+1)%MaxSize

20.循環(huán)隊(duì)列用數(shù)組A[0,m-l]存放其元素值,已知其頭尾指針分別是front和rear,則當(dāng)前隊(duì)

列中的元素個(gè)數(shù)是()。

A.(rear-front+m)%mB.rear-front+1C.rear-front-1D.rear-front

21.若用一個(gè)大小為6的一維數(shù)組來實(shí)現(xiàn)循環(huán)隊(duì)列,且當(dāng)前rear和front的值分別為0和3。

當(dāng)從隊(duì)列中刪除一個(gè)元素,再加入兩個(gè)元素后,rear和front的值分別是()。

A.1和5B.2和4C.4和2D.5和1

22.最不適合用作鏈隊(duì)的鏈表是()°

A.只帶隊(duì)頭指針的非循環(huán)鏈表B.只帶隊(duì)頭指針的循環(huán)雙鏈表

C.只帶隊(duì)尾指針的循環(huán)雙鏈表D.只帶隊(duì)尾指針的循環(huán)單鏈表

23.在一個(gè)鏈隊(duì)中,假設(shè)f和r分別為隊(duì)頭和隊(duì)尾指針,則插入s所指結(jié)點(diǎn)的運(yùn)算是()o

A.f->next=s;f=s;B.r->next=s;r=s;

C.s->next=r;r=s;D.s->next=f;f=s;

24.在一個(gè)鏈隊(duì)中,假設(shè)f和r分別為隊(duì)頭和隊(duì)尾指針,則刪除一個(gè)結(jié)點(diǎn)的運(yùn)算是()o

A.r=f->next;B.r=r->next;C.f=f->next;D.f=r->next;

25.用單鏈表表示的鏈隊(duì)的隊(duì)頭在鏈表的()位置。

A.鏈頭B.鏈尾C.鏈中

26.對(duì)于棧操作數(shù)據(jù)的原則是()。

A.先進(jìn)先出B.后進(jìn)先出C.后進(jìn)后出D.不分順序

27.在作進(jìn)棧運(yùn)算時(shí),應(yīng)先判別棧是否(①),在作退棧運(yùn)算時(shí)應(yīng)先判別棧是否(②)。當(dāng)棧中

元素為n個(gè),作進(jìn)棧運(yùn)算時(shí)發(fā)生上溢,則說明該棧的最大容量為(③)。為了增加內(nèi)存空間的

利用率和減少溢出的可能性,由兩個(gè)棧共享一片連續(xù)的內(nèi)存空間時(shí),應(yīng)將兩棧的(④)分別設(shè)

在這片內(nèi)存空間的兩端,這樣,當(dāng)(⑤)時(shí),才產(chǎn)生上溢。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論