版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
國(guó)家二級(jí)C++機(jī)試(數(shù)據(jù)結(jié)構(gòu)與算法)
模擬試卷第1套
一、選擇題(本題共19題,每題1.0分,共19分。)
1、算法的空間復(fù)雜度是指()。
A、算法在執(zhí)行過(guò)程中所需要的計(jì)算機(jī)存儲(chǔ)空間
B、算法所處理的數(shù)據(jù)量
C、算法程序中的語(yǔ)句或指令條數(shù)
D、算法在執(zhí)行過(guò)程中所需要的臨時(shí)工作單元數(shù)
標(biāo)準(zhǔn)答案:
知識(shí)之解析A:算法的空間復(fù)雜度是指執(zhí)行這個(gè)算法所需耍的內(nèi)存空間。這個(gè)內(nèi)存空
間包括算法程序所占的空問(wèn),輸入的初始數(shù)據(jù)所占的存儲(chǔ)空間以及算法執(zhí)行過(guò)程中
所需要的額外空間V
2、下列敘述中正確的是()。
A、一個(gè)算法的空間復(fù)雜度大,則其時(shí)間復(fù)雜度也必定大
B、一個(gè)算法的空間復(fù)雜度大,則其時(shí)間復(fù)雜度必定小
C、一個(gè)算法的時(shí)間復(fù)雜度大,則其空間復(fù)雜度必定小
D、算法的時(shí)間復(fù)雜度與空間復(fù)雜度沒(méi)有直接關(guān)系
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:算法的復(fù)雜度.主要包括時(shí)間復(fù)雜度和空間復(fù)雜度。算法的時(shí)間復(fù)雜度
是指執(zhí)行算法所需要的計(jì)算工作量,算法的工作量用算法所執(zhí)行的基本運(yùn)算次數(shù)來(lái)
度量,而算法所執(zhí)行的基本運(yùn)算次數(shù)是問(wèn)題規(guī)模的函數(shù),即算法的工作量=4可,
其中n是問(wèn)題的規(guī)模:算法的空間復(fù)雜度,一般是指執(zhí)行這個(gè)算法所需要的內(nèi)存空
間。一個(gè)算法所占用的存儲(chǔ)空間包括算法程序所占用的空間、輸入的初始數(shù)據(jù)所占
的存儲(chǔ)空間以及算法執(zhí)行過(guò)程中所需要的額外空間。根據(jù)各自的定義可知,算法的
時(shí)間復(fù)雜度與空間復(fù)雜度并不相關(guān)。
3、下列描述中正確的是()。
A、線性鏈表是線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
B、棧與隊(duì)列是非線性結(jié)構(gòu)
C、雙向鏈表是非線性結(jié)構(gòu)
D、只有根結(jié)點(diǎn)的二義樹(shù)是線性結(jié)構(gòu)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)稱為線性鏈表。線性表鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的基本單
位稱為存儲(chǔ)結(jié)點(diǎn),每個(gè)存儲(chǔ)結(jié)點(diǎn)包括數(shù)據(jù)域和指針域兩個(gè)組成部分。各數(shù)據(jù)元素之
間的前后件關(guān)系是由各結(jié)點(diǎn)的指針域來(lái)指示的,指向線性表中第一結(jié)點(diǎn)的指針
HEAD稱為頭指針,當(dāng)HEAD=NULL時(shí)稱為空表。棧、隊(duì)列和雙向鏈表是線性結(jié)
構(gòu),樹(shù)是一種簡(jiǎn)單的非線性結(jié)構(gòu)。在樹(shù)這種數(shù)據(jù)結(jié)構(gòu)中,所有數(shù)據(jù)元素的關(guān)系具有
明顯的層次特征。二叉樹(shù)是非線性結(jié)構(gòu)。線性結(jié)構(gòu)和非線性結(jié)構(gòu)是從數(shù)據(jù)的邏輯結(jié)
構(gòu)角度來(lái)講的,與該數(shù)據(jù)結(jié)構(gòu)中有多少個(gè)元素沒(méi)有關(guān)系,即使是空的二叉樹(shù)也是非
線性結(jié)構(gòu)。
4、支持子程序調(diào)用的數(shù)據(jù)結(jié)構(gòu)是()。
A、棧
B、樹(shù)
C、隊(duì)列
D、二又樹(shù)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:棧是一種限定在一端進(jìn)行插入與刪除的線性表。在主函數(shù)調(diào)用予函數(shù)
時(shí),要首先保存主函數(shù)當(dāng)前的狀態(tài),然后轉(zhuǎn)去執(zhí)行子函數(shù),把子函數(shù)的運(yùn)行結(jié)果返
回到主函數(shù)調(diào)用子函數(shù)時(shí)的位在,主函數(shù)再接著往下執(zhí)行,這種過(guò)程符合棧的特
點(diǎn)。所以一般采用棧式存儲(chǔ)方式。
5、下列關(guān)于棧的敘述中,正確的是("
A、棧底元素一定是最后入棧的元素
B、棧頂元素一定是最先入棧的元素
C、棧操作遵循先進(jìn)后出的原則
D、以上三種說(shuō)法都不對(duì)
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:棧是限定只能在表的一端進(jìn)行插入和刪除操作的線性表,必須按“后
進(jìn)先出”的規(guī)則操作元素。
6、下列對(duì)隊(duì)列的描述中正確的是()。
A、隊(duì)列屬于非線性表
B、隊(duì)列按“先進(jìn)后出”原則組織數(shù)據(jù)
C、隊(duì)列在隊(duì)尾刪除數(shù)據(jù)
D、隊(duì)列按“先進(jìn)先出”原則組織數(shù)據(jù)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:隊(duì)列(queue)是指允許在一端進(jìn)行插入、而在另一端進(jìn)行刪除的線性
表。允許插入的一端稱為隊(duì)尾:允許刪除的一端稱為隊(duì)頭。在隊(duì)列這種數(shù)據(jù)結(jié)構(gòu)
中,最先插入的元素將最先能夠被刪除;反之,最后插入的元素將最后才能被刪
除。因此。隊(duì)列又稱“先進(jìn)先出”或“后進(jìn)后出”的線性表。
7、下列關(guān)于棧的描述中正確的是()。
A、在棧中只能插入元素而不能刪除元素
B、在棧中只能刪除元素而不能插入元素
C、棧是特殊的線性表,只能在一端插入或刪除元素
D、棧是特殊的線性表,只能在一端插入元素,而在另一端刪除元素
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:棧是限定在一端進(jìn)行插入與刪除的線性表,在棧中,允許插入與刪除
的一端稱為棧頂,不允許插入與刪除的另一端稱為棧底。
8、下列敘述中正確的是()。
A、循環(huán)隊(duì)列是隊(duì)列的一種鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
B、循環(huán)隊(duì)列是隊(duì)列的一種順序存儲(chǔ)結(jié)構(gòu)
C、循環(huán)隊(duì)列是非線性結(jié)構(gòu)
D、循環(huán)隊(duì)列是一種邏輯結(jié)構(gòu)
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:本題主要考查循環(huán)隊(duì)列的概念,循環(huán)隊(duì)列作為隊(duì)列的一種也應(yīng)該是線
性結(jié)構(gòu)。隊(duì)列是一種邏輯結(jié)構(gòu),而循環(huán)隊(duì)列是一種順序存儲(chǔ)結(jié)構(gòu)的隊(duì)列。
9、下列敘述中正確的是()。
A、棧是一種先進(jìn)先出的線性表
B、隊(duì)列是一種后進(jìn)先出的線性表
C、棧與隊(duì)列都是非線性結(jié)構(gòu)
D、棧與隊(duì)列都是線性結(jié)構(gòu)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:棧是先進(jìn)后出,隊(duì)列是先進(jìn)先出。棧和隊(duì)列都是一種線性表,屬于線
性結(jié)構(gòu)。
10、下列敘述中正確的是()。
A、循環(huán)隊(duì)列中的元素個(gè)數(shù)隨隊(duì)頭指針與隊(duì)尾指針的變化而動(dòng)態(tài)變化
B、循環(huán)隊(duì)列中的元素個(gè)數(shù)隨隊(duì)頭指針的變化而動(dòng)態(tài)變化
C、循環(huán)隊(duì)列中的元素個(gè)數(shù)隨隊(duì)尾指針的變化而動(dòng)態(tài)變化
D、循環(huán)隊(duì)列中的元素個(gè)數(shù)不會(huì)變化
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:所謂循環(huán)結(jié)構(gòu)就是將隊(duì)列存儲(chǔ)空間的坡后一個(gè)位置繞到第一個(gè)位置
上,形成邏輯上的環(huán)狀空間,循環(huán)使用。在循環(huán)隊(duì)列中,用隊(duì)尾指針rear指向隊(duì)
列中的隊(duì)尾元素,用隊(duì)頭指針front指向隊(duì)頭元素的前一個(gè)位置,因此,隊(duì)列中的
元素?cái)?shù)等于從隊(duì)頭指針front指向的后一個(gè)位也與隊(duì)尾指針rear指向位也之間的元
素?cái)?shù)量。
11、下列敘述中正確的是()。
A、線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)與順序存儲(chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間是相同的
B、線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間一般要多于順序存儲(chǔ)結(jié)構(gòu)
C、線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間一般要少于順序存儲(chǔ)結(jié)構(gòu)
D、以上都不正確
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:線性表的存儲(chǔ)分為順序存儲(chǔ)和鏈?zhǔn)酱鎯?chǔ)。在順序存儲(chǔ)中,所有元素所
占的存儲(chǔ)空間是連續(xù)的。而在鏈?zhǔn)酱鎯?chǔ)的方式中,將存儲(chǔ)空間的每一個(gè)存儲(chǔ)結(jié)點(diǎn)分
為兩部分,一部分用于存儲(chǔ)數(shù)據(jù)元素的值,稱為數(shù)據(jù)域:另一部分用于存儲(chǔ)下一個(gè)
元素的存儲(chǔ)序號(hào),稱為由針域。所以線性表的鏈?zhǔn)酱鎯?chǔ)方式比順序存儲(chǔ)方式的存儲(chǔ)
空間要大一些。
12、某系統(tǒng)總體結(jié)構(gòu)圖如下圖所示:MU該系統(tǒng)總體
結(jié)構(gòu)圖的深度是()。
A、7
B、6
C、3
D、2
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:這個(gè)系統(tǒng)總體結(jié)構(gòu)圖是一棵樹(shù)結(jié)構(gòu),在樹(shù)結(jié)構(gòu)中,根結(jié)點(diǎn)在第1層,
同一層上所有子結(jié)點(diǎn)都在下一層,由系統(tǒng)總體結(jié)構(gòu)圖可知,這棵樹(shù)共3層。在樹(shù)結(jié)
構(gòu)中,樹(shù)的最大層次稱為樹(shù)的深度。所以這棵樹(shù)的深度為3。
13、某二叉樹(shù)有5個(gè)度為2的結(jié)點(diǎn),則該二叉樹(shù)中的葉子結(jié)點(diǎn)數(shù)是()。
A、10
B、8
C、6
D、4
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:根據(jù)二叉樹(shù)的性質(zhì),在任意二叉樹(shù)中,度為0的結(jié)點(diǎn)(即葉子結(jié)點(diǎn))總
是比度為2的結(jié)點(diǎn)多一個(gè)。
14、一棵二叉樹(shù)中共有70個(gè)葉子結(jié)點(diǎn)與80個(gè)度為1的結(jié)點(diǎn),則該二叉樹(shù)中的總結(jié)
點(diǎn)數(shù)為()。
A、219
B、221
C、229
D、231
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:在二叉樹(shù)中,葉子結(jié)點(diǎn)個(gè)數(shù)為no,則度為2的結(jié)點(diǎn)數(shù)n2=no-l。本
題中葉子結(jié)點(diǎn)的個(gè)數(shù)為70,所以度為2的結(jié)點(diǎn)個(gè)數(shù)為69,因而總結(jié)點(diǎn)數(shù)=葉子結(jié)
點(diǎn)數(shù)十度為1的結(jié)點(diǎn)數(shù)十度為2的結(jié)點(diǎn)數(shù)=70+80+69=219。
15、設(shè)樹(shù)T的深度為4,其中度為1,2,3,4的結(jié)點(diǎn)個(gè)數(shù)分別為4,2,11。則T中的葉
子結(jié)點(diǎn)數(shù)為()。
A、8
B、7
C、6
D、5
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:深度為m二叉樹(shù)其總結(jié)點(diǎn)數(shù)為2m—1=24-1=15。總結(jié)點(diǎn)數(shù)減去度為
1,2,3,4的結(jié)點(diǎn)個(gè)數(shù)就是葉子結(jié)點(diǎn)數(shù)。15-4-2-l-l=7o
A、DYBEAFCZX
B、YDEBFZXCA
C、ABDYECFXZ
D、ABCDEFXYZ
標(biāo)準(zhǔn)答案:c
知識(shí)點(diǎn)解析:二叉樹(shù)前序遍歷的簡(jiǎn)單描述:若二叉樹(shù)為空,則結(jié)束返回;否則:
①訪問(wèn)根結(jié)點(diǎn);②前序遍歷左子樹(shù);③前序遍歷石子樹(shù)??梢?jiàn),前序遍歷二叉樹(shù)
的過(guò)程是一個(gè)遞歸的過(guò)程。根據(jù)題目中給出的二叉樹(shù)的結(jié)構(gòu)可知前序遍歷的結(jié)果是
ABDYECFXZo
17、在長(zhǎng)度為64的有序線性表中進(jìn)行順序查找,最壞情況下需要比較的次數(shù)為
()o
A、63
B、64
C、6
D、7
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:順序查找又稱順序搜索。順序查找一般是指在線性表中查找指定的元
素,其基本方法是:從線性表的第一元素開(kāi)始,依次將線性表中的元素與被查找的
元素進(jìn)行比較,若相等則表示找到(即查找成功),若線性表中所有元素都與被查元
素進(jìn)行了比較但都不相等,則表示線性表中沒(méi)有要找的元素(即查找失?。?。如果線
性表中的第一個(gè)元素就是要查找的元素,則只需要做一次比較就查找成功;但如果
要查找的元素是線性表中的最后一個(gè)元素,或者要查找元素不在線性表中,則需要
與線性表中所有元素進(jìn)行比較,這是順序查找的最壞情況,比較次數(shù)為線性表的長(zhǎng)
度。
18、對(duì)于長(zhǎng)度為n的線性表,在最壞情況下,下列各排序法所對(duì)應(yīng)的比較次數(shù)中正
確的是()。
A、冒泡排序?yàn)閚/2
B、冒泡排序?yàn)閚
C、快速排序?yàn)閚
D、快速排序?yàn)閚(n—1)/2
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)器析:假設(shè)線性表的長(zhǎng)度為n,則在最壞情況下,冒泡排序需要經(jīng)過(guò)n/2
遍的從前往后的掃描和n/2遍的從后往前的掃描,需要的比較次數(shù)為n(n-I)/
2o快速排序法也是一種互換類的排序方法,但由于它比冒泡排序法的速度快,因
此,稱為快速排序法。
19、下列排序方法中,最壞情況下比較次數(shù)最少的是()。
A、冒泡排序
B、簡(jiǎn)單選擇排序
C、直接插入排序
D、堆排序
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:冒泡排序、簡(jiǎn)單選擇排序和直接插入排序法在最壞的情況下比較次數(shù)
為;n(n—l)/2。而堆排序法在最壞的情況下需要比較的次數(shù)為O(nlog2n)。其中堆
排序的比較次數(shù)最少。
國(guó)家二級(jí)C++機(jī)試(數(shù)據(jù)結(jié)構(gòu)與算法)
模擬試卷第2套
一、選擇題(本題共22題,每題1.0分,共22分。)
1算法的有窮性是指
A、算法程序的運(yùn)行時(shí)間是有限的
B、算法程序所處理的數(shù)據(jù)量是有限的
C、算法程序的長(zhǎng)度是有限的
D、算法只能被有限的用戶使用
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:算法的有窮性,是指算法必須能在有限的時(shí)間內(nèi)做完,即算法必須能
在執(zhí)行有限個(gè)步驟之后終止。
2、下列敘述中正確的是
A、算法就是程序
B、設(shè)計(jì)算法時(shí)只需要考慮數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)
C、設(shè)計(jì)算法時(shí)只需要考慮結(jié)果的可靠性
D、以上三種說(shuō)法都不對(duì)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:所謂算法是指解題方案的準(zhǔn)確而完整的描述。是一組嚴(yán)謹(jǐn)?shù)囟x運(yùn)算
順序的規(guī)則,并且每一個(gè)規(guī)則都是有效的,且是明確的,此順序?qū)⒃谟邢薜拇螖?shù)下
終止。算法不等于程序,也不等于計(jì)算方法。設(shè)計(jì)算法時(shí)不僅要考慮對(duì)數(shù)據(jù)對(duì)象的
運(yùn)算和操作,還要考慮算法的控制結(jié)構(gòu)。
3、算法的時(shí)間豆雜度是指
A、算法的執(zhí)行時(shí)間
B、算法所處理的數(shù)據(jù)量
C、算法程序中的語(yǔ)句或指令條數(shù)
D、算法在執(zhí)行過(guò)程中所需要的基本運(yùn)算次數(shù)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:算法的時(shí)間復(fù)雜度,是指執(zhí)行算法所需要的計(jì)算工作量。算法的工作
量可以用算法在執(zhí)行過(guò)程中所需基本運(yùn)算的執(zhí)行次數(shù)來(lái)度量。
4、下列敘述中正確的是
A、算法的效率只與問(wèn)題的規(guī)模有關(guān),而與數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)無(wú)關(guān)
B、算法的時(shí)間復(fù)雜度是指執(zhí)行算法所需要的計(jì)算工作量
C、數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu)是一一對(duì)應(yīng)的
D、算法的時(shí)間復(fù)雜度與空間復(fù)雜度一定相關(guān)
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:算法的時(shí)間復(fù)雜度是指執(zhí)行算法所需要的計(jì)算工作量。算法的工作量
用算法所執(zhí)行的基本運(yùn)算的次數(shù)來(lái)度量,而算法所執(zhí)行的基本運(yùn)算次數(shù)是問(wèn)題規(guī)模
的函數(shù);算法的空間復(fù)雜度一般是指執(zhí)行這個(gè)算法所需要的內(nèi)存空間。算法的時(shí)間
復(fù)雜度與空間復(fù)雜度并不相關(guān)c數(shù)據(jù)的邏輯結(jié)構(gòu)就是數(shù)據(jù)元素之間的邏輯關(guān)系.它
是從邏輯上描述數(shù)據(jù)元素之間的關(guān)系,是獨(dú)立于計(jì)算機(jī)的;數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是研究
數(shù)據(jù)元素和數(shù)據(jù)元素之間的關(guān)系如何在計(jì)算機(jī)中表示,它們并非一對(duì)應(yīng)。算法的執(zhí)
行效率不僅與問(wèn)題的規(guī)模有關(guān),還與數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)有關(guān)。
5、下列敘述中正確的是
A、一個(gè)算法的空間復(fù)雜度大,則其時(shí)間復(fù)雜度也必定大
B、一個(gè)算法的空間復(fù)雜度大,則其時(shí)間復(fù)雜度必定小
C、一個(gè)算法的時(shí)間復(fù)雜度大,則其空間復(fù)雜度必定小
D、算法的時(shí)間復(fù)雜度與空間復(fù)雜度沒(méi)有直接關(guān)系
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:算法的復(fù)雜度主要包括時(shí)間復(fù)雜度和空間復(fù)雜度。算法的時(shí)間復(fù)雜度
是指執(zhí)行算法所需要的計(jì)算工作量,算法的工作量用算法所執(zhí)行的基本運(yùn)算次數(shù)來(lái)
度量,而算法所執(zhí)行的基本運(yùn)算次數(shù)是問(wèn)題規(guī)模的函數(shù),即算法的工作量=的力
其中n是問(wèn)題的規(guī)模;算法的空間復(fù)雜度,一般是指執(zhí)行這個(gè)算法所需要的內(nèi)存空
間。一個(gè)算法所占用的存儲(chǔ)空間包括算法程序所占用的空間、輸入的初始數(shù)據(jù)所占
的存儲(chǔ)空間以及算法執(zhí)行過(guò)程中所需要的額外空間。根據(jù)各自的定義可知,算法的
時(shí)間復(fù)雜度與空間復(fù)雜度并不相關(guān)。
6、數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是指
A、存儲(chǔ)在外存中的數(shù)據(jù)
B、數(shù)據(jù)所占的存儲(chǔ)空間量
C、數(shù)據(jù)在計(jì)算機(jī)中的順序存儲(chǔ)方式
D、數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:在對(duì)數(shù)據(jù)進(jìn)行處理時(shí),各數(shù)據(jù)元素在計(jì)算機(jī)中的存儲(chǔ)關(guān)系,即為數(shù)據(jù)
的存儲(chǔ)結(jié)構(gòu)。
7、下列描述中正確的是
A、一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)只能有一種存儲(chǔ)結(jié)構(gòu)
B、數(shù)據(jù)的邏輯結(jié)構(gòu)屬于線性結(jié)構(gòu),存儲(chǔ)結(jié)構(gòu)屬于豐線性結(jié)構(gòu)
C、一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)可以有多種存儲(chǔ)結(jié)構(gòu),旦各種存儲(chǔ)結(jié)構(gòu)不影響數(shù)據(jù)處理的效
率
D、一個(gè)邏倡數(shù)據(jù)結(jié)構(gòu)可以有多種存儲(chǔ)結(jié)構(gòu),且各種存儲(chǔ)結(jié)構(gòu)影響數(shù)據(jù)處理的效率
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:數(shù)據(jù)的邏輯結(jié)構(gòu)是指數(shù)據(jù)集合中各數(shù)據(jù)元素之間所固有的邏輯關(guān)系:
數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是在對(duì)數(shù)據(jù)進(jìn)行處理時(shí),各數(shù)據(jù)元素在計(jì)算機(jī)中的存儲(chǔ)關(guān)系。數(shù)據(jù)
的存儲(chǔ)結(jié)構(gòu)是指數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示,一種邏輯結(jié)構(gòu)可以表示成多種
存儲(chǔ)結(jié)構(gòu);而采用不同的存儲(chǔ)結(jié)構(gòu),其數(shù)據(jù)處理的效率是不同的。
8、下列描述中正確的是
A、數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu)必定是-一-對(duì)應(yīng)的
B、由于計(jì)算機(jī)存儲(chǔ)空間是向量式的存儲(chǔ)結(jié)構(gòu),因此,數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)一定是線性
結(jié)構(gòu)
C、程序設(shè)計(jì)語(yǔ)言中的數(shù)據(jù)一般是順序存儲(chǔ)結(jié)構(gòu),因此,利用數(shù)組只能處理線性結(jié)
構(gòu)
D、以上三種說(shuō)法都不對(duì)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:數(shù)據(jù)的邏輯結(jié)構(gòu)是指反映數(shù)據(jù)元素之間邏輯關(guān)系的數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)的
邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)空間中的存放形式稱為數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)(也稱數(shù)據(jù)的物理結(jié)
構(gòu))。一般來(lái)說(shuō),一種數(shù)據(jù)的邏輯結(jié)構(gòu)根據(jù)需要可以表示成多種存儲(chǔ)結(jié)構(gòu),常用的
存儲(chǔ)結(jié)構(gòu)有順序、鏈接、索引等。
9、下列數(shù)據(jù)結(jié)構(gòu)中,屬于非線性結(jié)構(gòu)的是
A、循環(huán)隊(duì)列
B、帶鏈隊(duì)列
C、二叉樹(shù)
D、帶鏈棧
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:根據(jù)數(shù)據(jù)結(jié)構(gòu)中各數(shù)據(jù)元素之間的前后件關(guān)系的復(fù)雜程度,一般將數(shù)
據(jù)結(jié)構(gòu)分為兩大類:線性結(jié)構(gòu)和非線性結(jié)構(gòu)。循環(huán)隊(duì)列、帶鏈隊(duì)列和帶鏈棧都是線
性結(jié)構(gòu),而二叉樹(shù)是非線性結(jié)構(gòu)。
10、下列描述中正確的是
A、線性鏈表是線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
B、棧與隊(duì)列是非線性結(jié)構(gòu)
C、雙向鏈表是非線性結(jié)構(gòu)
D、只有根結(jié)點(diǎn)的二叉樹(shù)是線性結(jié)構(gòu)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)稱為線性鏈表。線性表鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的基本單
位稱為存儲(chǔ)結(jié)點(diǎn),每個(gè)存儲(chǔ)結(jié)點(diǎn)包括數(shù)據(jù)域和指針域兩個(gè)組成部分。各數(shù)據(jù)元素之
間的前后件關(guān)系是由各結(jié)點(diǎn)的指針域來(lái)指示的,指向線性表中第一結(jié)點(diǎn)的指針
HEAD稱為頭指針,當(dāng)HEAD=NULL時(shí)稱為空表。棧、隊(duì)列和雙向鏈表是線性結(jié)
構(gòu),樹(shù)是一種簡(jiǎn)單的非線性結(jié)構(gòu)。在樹(shù)這種數(shù)據(jù)結(jié)構(gòu)中,所有數(shù)據(jù)元素的關(guān)系具有
明顯的層次特征。二叉樹(shù)是非線性結(jié)構(gòu)。線性結(jié)構(gòu)和非線性結(jié)構(gòu)是從數(shù)據(jù)的邏輯結(jié)
構(gòu)角度來(lái)講的,與該數(shù)據(jù)結(jié)構(gòu)中有多少個(gè)元素沒(méi)有關(guān)系,即使是空的二叉樹(shù)也是非
線性結(jié)構(gòu)。
11、下面敘述中正確的是
A、線性表是線性結(jié)構(gòu)
B、棧與隊(duì)列是非線性結(jié)構(gòu)
C、線性鏈表是非線性結(jié)構(gòu)
D、二叉樹(shù)是線性結(jié)構(gòu)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:線性表是最簡(jiǎn)單的、最常用的一種線件結(jié)構(gòu)C所謂線性鏈表指的是采
用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的線性表。棧和隊(duì)列其實(shí)是一種特殊的線性表。樹(shù)是一種簡(jiǎn)單的非
線性結(jié)構(gòu),二叉樹(shù)是樹(shù)的一種。
12、下列關(guān)于棧的敘述正確的是
A、棧按“先進(jìn)先出”組織數(shù)據(jù)
B、棧按“先進(jìn)后出”組織數(shù)據(jù)
C、只能在棧底插入數(shù)據(jù)
D、不能刪除數(shù)據(jù)
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:棧是限定在一端進(jìn)行插入和刪除的線性表,允許進(jìn)行插入和刪除元素
的一端稱為棧頂,另一端稱為棧底。棧是按照“先進(jìn)后出''的原則組織數(shù)據(jù)的。
13、支持子程序調(diào)用的數(shù)據(jù)結(jié)構(gòu)是
A^棧
B、樹(shù)
C、隊(duì)列
D、二叉樹(shù)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:棧是一種限定在一端進(jìn)行插入與刪除的線性表。在主函數(shù)調(diào)用子函數(shù)
時(shí),要首先保存主函數(shù)當(dāng)前的狀態(tài),然后轉(zhuǎn)去執(zhí)行子函數(shù)。把子函數(shù)的運(yùn)行結(jié)果返
回到主函數(shù)調(diào)用了函數(shù)時(shí)的位置,主函數(shù)再接著往下執(zhí)行,這種過(guò)程符合棧的特
點(diǎn)。所以一般采用棧式存儲(chǔ)方式。
14、下列數(shù)據(jù)結(jié)構(gòu)中,能夠按照'、先進(jìn)后出“原則存取數(shù)據(jù)的是
A、循環(huán)隊(duì)列
B、棧
C、隊(duì)列
D、二叉樹(shù)
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:棧按照“先進(jìn)后出”(FILO)或“后進(jìn)先出”(LIFO)組織數(shù)據(jù);隊(duì)列是“先進(jìn)
先出”F(IFO)或“后進(jìn)后出”(LILO)的線性表。
15、下列關(guān)于棧敘述正確的是
A、棧頂元素能最先被刪除
B、棧頂元素最后才能被刪除
C、棧底元素永遠(yuǎn)不能被刪除
D、以上三種說(shuō)法都不對(duì)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:棧是先進(jìn)后出的線性表,棧頂?shù)脑刈钕缺粍h除,棧底的元素最后被
刪除。
16、下列關(guān)于棧的敘述中,正確的是
A、棧底元素一定是最后入棧的元素
B、棧頂元素一定是最先入棧的元素
C、棧操作遵循先進(jìn)后出的原則
D、以上三種說(shuō)法都不對(duì)
標(biāo)準(zhǔn)答案:c
知識(shí)點(diǎn)。析:棧是限定只能在表的一端進(jìn)行插入和刪除操作的線性表,必須按“后
進(jìn)先出”的規(guī)則操作元素。
17、一個(gè)棧的初始狀態(tài)為空?,F(xiàn)將元素1、2、3、4、5、A、B、C、D、E依次入
棧,然后再依次出棧,則元素出棧的順序是
A、12345ABCDE
B、EDCBA54321
C、ABCDE12345
D、54321EDCBA
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:棧是按照“先進(jìn)后出”或“后進(jìn)先出”的原則組織數(shù)據(jù)的。所以出棧順序
是EDCBA54321。
18、棧的初始狀態(tài)為空?,F(xiàn)將元素1,2,3,A,B,C依次入棧,再依次出棧,
則元素出棧的順序是
A、1,2,3,A,B,C
B、C,B,A,1,2,3
C、C,B,A,3,2,1
D、1,2,3,C,B,A
標(biāo)準(zhǔn)答案:c
知識(shí)點(diǎn)詞析:棧是按照“先進(jìn)后出''或"后進(jìn)先出”的原則組織數(shù)據(jù)的。所以出棧順序
是CBA321。
19、下列對(duì)隊(duì)列的描述中正確的是
A、隊(duì)列屬于非線性表
B、隊(duì)列按“先進(jìn)后出”原則組織數(shù)據(jù)
C、隊(duì)列在隊(duì)尾刪除數(shù)據(jù)
D、隊(duì)列按“先進(jìn)先出”原則組織數(shù)據(jù)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:隊(duì)列(queue)是指允許在一端進(jìn)行插入、而在另一端進(jìn)行刪除的線性
表。允許插入的一端稱為隊(duì)尾;允許刪除的一端稱為隊(duì)頭。在隊(duì)列這種數(shù)據(jù)結(jié)構(gòu)
中,最先插入的元素將最先能夠被刪除;反之,最后插入的元素將最后才能被刪
除。因此,隊(duì)列又稱“先進(jìn)先出”或“后進(jìn)后出”的線性表。
20、下列敘述中正確的是
A、棧是一種先進(jìn)先出的線性表。
B、隊(duì)列是一種后進(jìn)先出的線性表
C、棧與隊(duì)列都是非線性結(jié)構(gòu)
D、以上三種說(shuō)法都不對(duì)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:棧是先進(jìn)后出的線性表,隊(duì)列是先進(jìn)先出的線性表,二者均為線性結(jié)
構(gòu)。
21、下列敘述中正確的是
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)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:本題主要考查了棧、隊(duì)列、循環(huán)隊(duì)列的概念,棧是先進(jìn)后出的線性
表,隊(duì)列是先進(jìn)先出的線性表。根據(jù)數(shù)據(jù)結(jié)構(gòu)中各數(shù)據(jù)元素之間的前后件關(guān)系的復(fù)
雜程度,一般將數(shù)據(jù)結(jié)溝分為兩大類型:線性結(jié)構(gòu)與非線性結(jié)構(gòu)。有序線性表既可
以采用順序存儲(chǔ)結(jié)構(gòu),又可以采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。
22、下列關(guān)于棧的描述中正確的是
A、在棧中只能插入元素而不能刪除元素
B、在棧中只能刪除元素而不能插入元素
C、棧是特殊的線性表,只能在一端插入或刪除元素
D、棧是特殊的線性表,只能在一端插入元素,而在另一端刪除元素
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:棧是限定在一端進(jìn)行插入與刪除的線性表,在棧中,允詫插入與刪除
的一端稱為棧頂,不允許插入與刪除的另一端稱為棧底。
國(guó)家二級(jí)C++機(jī)試(數(shù)據(jù)結(jié)構(gòu)與算法)
模擬試卷第3套
一、選擇題(本題共24題,每題1.0分,共24分。)
1、下列敘述中正確的是
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ì)尾指針共同決定
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:循環(huán)隊(duì)列中元素的個(gè)數(shù)是由隊(duì)頭指針和隊(duì)尾指針共同決定的,元素的
動(dòng)態(tài)變化也是通過(guò)隊(duì)頭指針和隊(duì)尾指針來(lái)反映的。
2、對(duì)于循環(huán)隊(duì)列,下列敘述中正確的是
A、隊(duì)頭指針是固定不變的
B、隊(duì)頭指針一定大于隊(duì)尾指針
C、隊(duì)頭指針一定小于隊(duì)尾指針
D、隊(duì)頭指針可以大于隊(duì)尾指針,也可以小于隊(duì)尾指針
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:所謂循環(huán)隊(duì)列,就是將隊(duì)列存儲(chǔ)空間的最后一個(gè)位置繞到第一個(gè)位
置,形成邏輯上的環(huán)狀空間,供隊(duì)列循環(huán)使用。在循環(huán)隊(duì)列中,用隊(duì)尾指針rear
指向隊(duì)列中的隊(duì)尾元素,用隊(duì)頭指針front指向隊(duì)頭元素的前一個(gè)位置。循環(huán)隊(duì)列
的主要操作是:入隊(duì)運(yùn)算和退隊(duì)運(yùn)算。每進(jìn)行一次入隊(duì)運(yùn)算,隊(duì)尾指針就進(jìn)一。每
進(jìn)行一次退隊(duì)運(yùn)算,隊(duì)頭指針就進(jìn)一。當(dāng)rear或from等于隊(duì)列的長(zhǎng)度加1時(shí),就
把rear或front值置為1。所以在循環(huán)隊(duì)列中,隊(duì)頭指針可以大于隊(duì)尾指針,也可
以小于隊(duì)尾指針。
3、下列敘述中正確的是
A、循環(huán)隊(duì)列是隊(duì)列的一種鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
B、循環(huán)隊(duì)列是隊(duì)列的一種順序存儲(chǔ)結(jié)構(gòu)
C、循環(huán)隊(duì)列是非線性結(jié)構(gòu)
D、循環(huán)隊(duì)列是一種邏輯結(jié)構(gòu)
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:本題主要考查循環(huán)隊(duì)列的概念,循環(huán)隊(duì)列作為隊(duì)列的一種也應(yīng)該是線
性結(jié)構(gòu)。隊(duì)列是一種邏輯結(jié)構(gòu),而循環(huán)隊(duì)列是一種順序存儲(chǔ)結(jié)構(gòu)的隊(duì)列。
4、設(shè)循環(huán)隊(duì)列的存儲(chǔ)空間為Q(l:35),初始狀態(tài)為front=rear=35?,F(xiàn)經(jīng)過(guò)一系列
入隊(duì)與退隊(duì)運(yùn)算后,front=15,rcar=15,則循環(huán)隊(duì)列中的元素個(gè)數(shù)為
A、15
B、16
C、20
D、0或35
標(biāo)準(zhǔn)答案.口
知識(shí)析:循環(huán)隊(duì)列的隊(duì)頭指針和尾指針都等于15,此循環(huán)隊(duì)列中元素的個(gè)數(shù)
有兩種情況,第一種情況是隊(duì)頭指針和尾指針都是第一次到達(dá)15,此時(shí)元素個(gè)數(shù)
為0;第二種情況是隊(duì)頭指針第一次到達(dá)15,而尾指針第二次到達(dá)15,此時(shí)元素
個(gè)數(shù)為35。
5、在一個(gè)容量為15的循環(huán)隊(duì)列中,若頭指針fronl=6,尾指針rear=9,則循環(huán)隊(duì)
列中的元素個(gè)數(shù)為
A、2
B、3
C、4
D、5
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:循環(huán)隊(duì)列中,rear表示尾指針,front表示頭指針,當(dāng)有元素入隊(duì)時(shí),
rear=rear+1,而元素出隊(duì)的時(shí)候,front二front+1,當(dāng)rear值大于front值時(shí),隊(duì)列中
的元素個(gè)數(shù)為rear-from,當(dāng)rear的值小于front時(shí),列隊(duì)中的元素個(gè)數(shù)為rear-
front+m(m表示隊(duì)列的容量)。
6、下列敘述中正確的是
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)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:棧是“先進(jìn)后出”,隊(duì)列”是先進(jìn)先出L棧和隊(duì)列都是一種線性表,屬
于線性結(jié)構(gòu)。有序線性表既可以采用順序存儲(chǔ)結(jié)構(gòu),也可以采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。采
用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的線性表稱之為線性鏈表。
7、下列與隊(duì)列結(jié)構(gòu)有關(guān)聯(lián)的是
A、函數(shù)的遞歸調(diào)用
B、數(shù)組元素的引用
C、多重循環(huán)的執(zhí)行
D、先到先服務(wù)的作業(yè)調(diào)度
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:隊(duì)列中最先插入的元素將最先被刪除,最后插入的元素將最后被刪
除。
8、下列敘述中正確的是
A、循環(huán)隊(duì)列中的元素個(gè)數(shù)隨隊(duì)頭指針與隊(duì)尾指針的變化而動(dòng)態(tài)變化
B、循環(huán)隊(duì)列中的元素個(gè)數(shù)隨隊(duì)頭指針的變化而動(dòng)態(tài)變化
C、循環(huán)隊(duì)列中的元素個(gè)數(shù)隨隊(duì)尾指針的變化而動(dòng)態(tài)變化
D、循環(huán)隊(duì)列中的元素個(gè)數(shù)不會(huì)變化
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:所謂循環(huán)結(jié)構(gòu)就是將隊(duì)列存儲(chǔ)空間的最后一個(gè)位置繞到第一個(gè)位置
上,形成邏輯上的環(huán)狀空間,循環(huán)使用。在循環(huán)隊(duì)列中,用隊(duì)尾指針rear指向隊(duì)
列中的隊(duì)尾元素,用隊(duì)頭指針from指向隊(duì)頭元素的前一個(gè)位置,因此,隊(duì)列中的
元素?cái)?shù)等于從隊(duì)頭指針舶nt指向的后一個(gè)位置與隊(duì)尾指針rear指向位置之間的元
素?cái)?shù)量。
9、下列關(guān)于線性鏈表的敘述中,正確的是
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、以上都不正確
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)稱為線性鏈表。在鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中,存儲(chǔ)數(shù)據(jù)
結(jié)構(gòu)的存儲(chǔ)空間可以不連續(xù),各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)順序與數(shù)據(jù)元素之間的邏輯關(guān)系可
以不一致,而數(shù)據(jù)元素之間的邏輯關(guān)系是由指針域來(lái)確定的。
10、下列敘述中正確的是
A、線性表鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的存儲(chǔ)空間一般要少于順序存儲(chǔ)結(jié)構(gòu)
B、線性表鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)與順序存儲(chǔ)結(jié)構(gòu)的存儲(chǔ)空間都是連續(xù)的
C、線性表鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的存儲(chǔ)空間可以是連續(xù)的,也可以是不連續(xù)的
D、以上都不正確
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:線性表的存儲(chǔ)分為順序存儲(chǔ)和鏈?zhǔn)酱鎯?chǔ)。在順序存儲(chǔ)中,所有元素所
占的存儲(chǔ)空間是連續(xù)的。而在鏈?zhǔn)酱鎯?chǔ)的方式中,將存儲(chǔ)空間的每一個(gè)存儲(chǔ)結(jié)點(diǎn)分
為兩部分,一部分用于存儲(chǔ)數(shù)據(jù)元素的值,稱為數(shù)據(jù)域;另一部分用于存儲(chǔ)下一個(gè)
元素的存儲(chǔ)序號(hào),稱為指針域。所以線性表的鏈?zhǔn)酱鎯?chǔ)方式比順序存儲(chǔ)方式的存儲(chǔ)
空間要大一些。
II、下列敘述中正確的是
A、線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)與順序存儲(chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間是相同的
B、線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間一般要多于順序存儲(chǔ)結(jié)構(gòu)
C、線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間一般要少于順序存儲(chǔ)結(jié)構(gòu)
D、以上都不正確
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:線性表的存儲(chǔ)分為順序存儲(chǔ)和鏈?zhǔn)酱鎯?chǔ)。在順序存儲(chǔ)中,所有元素所
占的存儲(chǔ)空間是連續(xù)的。而在鏈?zhǔn)酱鎯?chǔ)的方式中,將存儲(chǔ)空間的每一個(gè)存儲(chǔ)結(jié)點(diǎn)分
為兩部分,一部分用于存儲(chǔ)數(shù)據(jù)元素的值,稱為數(shù)據(jù)域;另一部分用于存儲(chǔ)下一個(gè)
元素的存儲(chǔ)序號(hào),稱為指針域。所以線性表的鏈?zhǔn)酱鎯?chǔ)方式比順序存儲(chǔ)方式的存儲(chǔ)
空間要大一些。
12,下列敘述中正確的是
A、線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)與順序存儲(chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間是相同的
B、線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間一般要多于順序存儲(chǔ)結(jié)構(gòu)
C、線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)所需要的存儲(chǔ)空間一般要少于順序存儲(chǔ)結(jié)構(gòu)
D、上述三種說(shuō)法都不對(duì)
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:線性表的存儲(chǔ)分為順序存儲(chǔ)和鏈?zhǔn)酱鎯?chǔ)。在順序存儲(chǔ)中,所有元素所
占的存儲(chǔ)空間是連續(xù)的,各數(shù)據(jù)元素在存儲(chǔ)空間中是按邏輯順序依次存放的。所以
每個(gè)元素只存儲(chǔ)其值就可以了,而在鏈?zhǔn)酱鎯?chǔ)的方式中,將存儲(chǔ)空間的每一個(gè)存儲(chǔ)
結(jié)點(diǎn)分為兩部分,一部分用于存儲(chǔ)數(shù)據(jù)元素的值,稱為數(shù)據(jù)域:另一部分用于存儲(chǔ)
下一個(gè)元素的存儲(chǔ)序號(hào),稱為指針域。所以線性表的鏈?zhǔn)酱鎯?chǔ)方式比順序存儲(chǔ)方式
的存儲(chǔ)空間要大一些。
13、下列對(duì)于線性鏈表的描述中正確的是
A、存儲(chǔ)空間不一定連續(xù),且各元素的存儲(chǔ)順序是任意的
B、存儲(chǔ)空間不一定連續(xù),且前件元素一定存儲(chǔ)在后件元素的前面
C、存儲(chǔ)空間必須連續(xù),且前件元素一定存儲(chǔ)在后件元素的前面
D、存儲(chǔ)空間必須連續(xù),且各元素的存儲(chǔ)順序是任意的
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:一?般來(lái)說(shuō),在線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中,各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)序號(hào)是不
連續(xù)的,并且各結(jié)點(diǎn)在存儲(chǔ)空間中的位置關(guān)系與邏輯關(guān)系也不一致。在線性鏈表
中,各數(shù)據(jù)元素之間的前后件關(guān)系是由各結(jié)點(diǎn)的指針域來(lái)指示的,指向線性表中第
一個(gè)結(jié)點(diǎn)的指針head稱為頭指針,當(dāng)head二NULL(或0)時(shí)稱為空表。
14、下列敘述中正確的是
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ǔ)空間
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:順序存儲(chǔ)方式主要用于線性的數(shù)據(jù)結(jié)構(gòu),它把邏輯上相鄰的數(shù)據(jù)元素
存儲(chǔ)在物理上相鄰的存儲(chǔ)單元里,結(jié)點(diǎn)之間的關(guān)系由存儲(chǔ)單元的鄰接關(guān)系來(lái)體現(xiàn)。
而鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的存儲(chǔ)空間不一定是連續(xù)的。
15、下列鏈表中,其邏輯結(jié)構(gòu)屬于非線性結(jié)構(gòu)的是
A、二叉鏈表
B、循環(huán)鏈表
C、雙向鏈表
D、帶鏈的棧
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:二叉鏈表作為樹(shù)的存儲(chǔ)結(jié)構(gòu)。鏈表中結(jié)點(diǎn)的兩個(gè)鏈域分別指向該結(jié)點(diǎn)
的第一個(gè)孩子結(jié)點(diǎn)和下一個(gè)兄弟結(jié)點(diǎn)。
16、下列敘述中正確的是
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、循環(huán)鏈表是非線性結(jié)構(gòu)
D、雙向鏈表是非線性結(jié)構(gòu)
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:在數(shù)據(jù)結(jié)溝中,樹(shù)這類的的數(shù)據(jù)結(jié)構(gòu)只有一個(gè)根結(jié)點(diǎn),但它不是線性
結(jié)構(gòu)。
17、某系統(tǒng)總體結(jié)構(gòu)圖如下圖所示:該系統(tǒng)總
體結(jié)構(gòu)圖的深度是
A、7
B、6
C、3
D、2
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:這個(gè)系統(tǒng)總體結(jié)構(gòu)圖是一棵樹(shù)結(jié)構(gòu),在樹(shù)結(jié)構(gòu)中,根結(jié)點(diǎn)在第1層,
同一層上所有子結(jié)點(diǎn)都在下一層,由系統(tǒng)總體結(jié)構(gòu)圖可知,這棵樹(shù)共3層。在樹(shù)結(jié)
構(gòu)中,樹(shù)的最大層次稱為樹(shù)的深度。所以這棵樹(shù)的深度為3。
18、某二叉樹(shù)中有飛個(gè)度為2的結(jié)點(diǎn),則該二叉樹(shù)中的葉子結(jié)點(diǎn)數(shù)為
A^n+1
B、n-1
C、2n
D、n/2
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:在任意一裸二叉樹(shù)中,度為0的結(jié)點(diǎn)(即葉子結(jié)點(diǎn))總是比度為2的結(jié)
點(diǎn)多一個(gè)。所以該二叉樹(shù)的葉子結(jié)點(diǎn)數(shù)等于n+1。
19、某二叉樹(shù)有5個(gè)度為2的結(jié)點(diǎn),則該二叉樹(shù)中的葉子結(jié)點(diǎn)數(shù)是
A、10
B、8
C、6
D、4
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:根據(jù)二叉樹(shù)的性質(zhì),在任意二叉樹(shù)中,度為0的結(jié)點(diǎn)(即葉子結(jié)點(diǎn))總
是比度為2的結(jié)點(diǎn)多一個(gè)。
20、一棵二叉樹(shù)中共有80個(gè)葉子結(jié)點(diǎn)與70個(gè)度為1的結(jié)點(diǎn),則該二叉樹(shù)中的總結(jié)
點(diǎn)數(shù)為
A、219
B、229
C、230
D、231
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:根據(jù)二叉樹(shù)的性質(zhì),在任意二叉樹(shù)中,度為0的結(jié)點(diǎn)(即葉子結(jié)點(diǎn))總
是比度為2的結(jié)點(diǎn)多一個(gè),故總結(jié)點(diǎn)數(shù)二葉子節(jié)點(diǎn)數(shù)+度為2的節(jié)點(diǎn)數(shù)十度為1的節(jié)
點(diǎn)數(shù)=80+79+70=229。
21、一棵二叉樹(shù)中共有70個(gè)葉子結(jié)點(diǎn)與80個(gè)度為1的結(jié)點(diǎn),則該二叉樹(shù)中的總結(jié)
點(diǎn)數(shù)為
A、219
B、221
C、229
D、231
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:在二叉樹(shù)中,葉子結(jié)點(diǎn)個(gè)數(shù)為no,則度為2的結(jié)點(diǎn)數(shù)n2=no-l。本題
中葉子結(jié)點(diǎn)的個(gè)數(shù)為70,所以度為2的結(jié)點(diǎn)個(gè)數(shù)為69,因而總結(jié)點(diǎn)數(shù)=葉子結(jié)點(diǎn)
數(shù)十度為I的結(jié)點(diǎn)數(shù)十度為2的結(jié)點(diǎn)數(shù)=70+80+69=219。
22、某二叉樹(shù)共有7個(gè)結(jié)點(diǎn),其中葉子結(jié)點(diǎn)只有1個(gè),則該二叉樹(shù)的深度為(假設(shè)
根結(jié)點(diǎn)在第1層)
A、3
B、4
C、6
D、7
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:根據(jù)二義堿的性質(zhì),度為0的結(jié)點(diǎn)(即葉子結(jié)點(diǎn))總是比度為2的結(jié)點(diǎn)
多一個(gè)。題目中的二叉樹(shù)的葉子結(jié)點(diǎn)為1,因此度為2的結(jié)點(diǎn)的數(shù)目為0,故該二
叉樹(shù)為7層,每層只有一個(gè)結(jié)點(diǎn)。
23、某二叉樹(shù)共有12個(gè)結(jié)點(diǎn),其中葉子結(jié)點(diǎn)只有1個(gè)。則該二叉樹(shù)的深度為(根結(jié)
點(diǎn)在第1層)
A、3
B、6
C、8
D、12
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:根據(jù)二叉樹(shù)的性質(zhì),度為0的結(jié)點(diǎn)(即葉子結(jié)點(diǎn))總是比度為2的結(jié)點(diǎn)
多一個(gè)。題目中的二叉樹(shù)的葉子結(jié)點(diǎn)為1,因此度為2的結(jié)點(diǎn)的數(shù)目為0,故該二
叉樹(shù)為12層,每層只有一個(gè)結(jié)點(diǎn)。
24、設(shè)樹(shù)T的深度為4,其中度為1,2,3,4的結(jié)點(diǎn)個(gè)數(shù)分別為4,2,1,1。則
T中的葉子結(jié)點(diǎn)數(shù)為
A、8
B、7
C、6
D、5
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:深度為m二叉樹(shù)其總結(jié)點(diǎn)數(shù)為2nLi=24-1=150總結(jié)點(diǎn)數(shù)減去度為
1,2,3,4的結(jié)點(diǎn)個(gè)數(shù)就是葉子結(jié)點(diǎn)數(shù)。15-4-2-1-1=70
國(guó)家二級(jí)C++機(jī)試(數(shù)據(jù)結(jié)構(gòu)與算法)
模擬試卷第4套
一、選擇題(本題共24題,每題1.0分,共24分。)
1、算法的有窮性是指
A、算法程序的運(yùn)行時(shí)間是有限的
B、算法程序所處理的數(shù)據(jù)量是有限的
C、算法程序的長(zhǎng)度是有限的
D、算法只能被有限的用戶使用
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:算法的有窮性,是指算法必須能在有限的時(shí)間內(nèi)做完,即算法必須能
在執(zhí)行有限個(gè)步驟之后終止。
2、下列敘述中正確的是
A、算法就是程序
B、設(shè)計(jì)算法時(shí)只需要考慮數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)
C、設(shè)計(jì)算法時(shí)只需要考慮結(jié)果的可靠性
D、以上三種說(shuō)法都不對(duì)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:所謂算法是指解題方案的準(zhǔn)確而完整的描述。是一組嚴(yán)謹(jǐn)?shù)囟x運(yùn)算
順序的規(guī)則,并且每一個(gè)規(guī)則都是有效的,且是明確的,此順序?qū)⒃谟邢薜拇螖?shù)下
終止。算法不等于程序,也不等于計(jì)算方法。設(shè)計(jì)算法時(shí)不僅要考慮對(duì)數(shù)據(jù)對(duì)象的
運(yùn)算和操作,還要考慮算法的控制結(jié)構(gòu)。
3、算法的空間復(fù)雜度是指
A、算法在執(zhí)行過(guò)程中所需要的計(jì)算機(jī)存儲(chǔ)空間
B、算法所處理的數(shù)據(jù)量
C、算法程序中的語(yǔ)句或指令條數(shù)
D、算法在執(zhí)行過(guò)程中所需要的臨時(shí)工作單元數(shù)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:算法的空間復(fù)雜度是指執(zhí)行這個(gè)算法所需要的內(nèi)存空間。這個(gè)內(nèi)存空
間包括算法程序所占的空間,輸入的初始數(shù)據(jù)所占的存儲(chǔ)空間以及算法執(zhí)行過(guò)程中
所需要的額外空間。
4、算法的時(shí)間復(fù)雜度是指
A、算法的執(zhí)行時(shí)間
B、算法所處理的數(shù)據(jù)量
C、算法程序中的語(yǔ)句或指令條數(shù)
D、算法在執(zhí)行過(guò)程中所需要的基本運(yùn)算次數(shù)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:算法的時(shí)間復(fù)雜度,是指執(zhí)行算法所需要的計(jì)算工作量。算法的工作
量可以用算法在執(zhí)行過(guò)程中所需基本運(yùn)算的執(zhí)行次數(shù)來(lái)度量。
5、下列敘述中正確的是
A、算法的效率只與問(wèn)題的規(guī)模有關(guān),而與數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)無(wú)關(guān)
B、算法的時(shí)間復(fù)雜度是指執(zhí)行算法所需要的計(jì)算工作量
C、數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu)是一一對(duì)應(yīng)的
D、算法的時(shí)間復(fù)雜度與空間復(fù)雜度一定相關(guān)
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:算法的時(shí)間復(fù)雜度是指執(zhí)行算法所需要的計(jì)算工作量。算法的工作量
用算法所執(zhí)行的基本運(yùn)算的次數(shù)來(lái)度量,而算法所執(zhí)行的基本運(yùn)算次數(shù)是問(wèn)題規(guī)模
的函數(shù);算法的空間復(fù)雜度一般是指執(zhí)行這個(gè)算法所需要的內(nèi)存空間。算法的時(shí)間
復(fù)雜度與空間復(fù)雜度并不相關(guān)。數(shù)據(jù)的邏輯結(jié)構(gòu)就是數(shù)據(jù)元素之間的邏輯關(guān)系,它
是從邏輯上描述數(shù)據(jù)元素之間的關(guān)系,是獨(dú)立于計(jì)算機(jī)的:數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是研究
數(shù)據(jù)元素和數(shù)據(jù)元素之間的關(guān)系如何在計(jì)算機(jī)中表示,它們并非一一對(duì)應(yīng)。算法的
執(zhí)行效率不僅與問(wèn)題的規(guī)模有關(guān),還與數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)有關(guān)。
6、下列敘述中正確的是
A、一個(gè)算法的空間復(fù)雜度大,則其時(shí)間熨雜度也必定大
B、一個(gè)算法的空間復(fù)雜度大,則其時(shí)間復(fù)雜度必定小
C、一個(gè)算法的時(shí)間復(fù)雜度大,則其空間復(fù)雜度必定小
D、算法的時(shí)間復(fù)雜度與空間復(fù)雜度沒(méi)有直接關(guān)系
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:算法的復(fù)雜度主要包括時(shí)間復(fù)雜度和空間復(fù)雜度。算法的時(shí)間復(fù)雜度
是指執(zhí)行算法所需要的計(jì)算工作量,算法的工作量用算法所執(zhí)行的基本運(yùn)算次數(shù)來(lái)
度量,而算法所執(zhí)行的基本運(yùn)算次數(shù)是問(wèn)題規(guī)模的函數(shù),即算法的工作量二f(N,
其中n是問(wèn)題的規(guī)模:算法的空間復(fù)雜度,一般是指執(zhí)行這個(gè)算法所需要的內(nèi)存空
間。一個(gè)算法所占用的存儲(chǔ)空間包括算法程序所占用的空間、輸入的初始數(shù)據(jù)所占
的存儲(chǔ)空間以及算法執(zhí)行過(guò)程中所需要的額外空間。根據(jù)各自的定義可知,算法的
時(shí)間復(fù)雜度與空間復(fù)雜度并不相關(guān)。
7、數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是指
A、存儲(chǔ)在外存中的數(shù)據(jù)
B、數(shù)據(jù)所占的存儲(chǔ)空間量
C、數(shù)據(jù)在計(jì)算機(jī)中的順序存儲(chǔ)方式
D、數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:在對(duì)數(shù)據(jù)進(jìn)行處理時(shí),各數(shù)據(jù)元素在計(jì)算機(jī)中的存儲(chǔ)關(guān)系,即為數(shù)據(jù)
的存儲(chǔ)結(jié)構(gòu)。
8、下列描述中正確的是
A、一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)只能有一種存儲(chǔ)結(jié)構(gòu)
B、數(shù)據(jù)的邏輯結(jié)構(gòu)屬于線性結(jié)構(gòu),存儲(chǔ)結(jié)構(gòu)屬于非線性結(jié)構(gòu)
C、一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)可以有多種存儲(chǔ)結(jié)構(gòu),且各種存儲(chǔ)結(jié)構(gòu)不影響數(shù)據(jù)處理的效
率
D、一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)可以有多種存儲(chǔ)結(jié)構(gòu),且各種存儲(chǔ)結(jié)構(gòu)影響數(shù)據(jù)處理的效率
標(biāo)準(zhǔn)答案:
知識(shí)之解析D:數(shù)據(jù)的邏輯結(jié)構(gòu)是指數(shù)據(jù)集合中各數(shù)據(jù)元素之間所固有的邏輯關(guān)系;
數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是在對(duì)數(shù)據(jù)進(jìn)行處理時(shí),各數(shù)據(jù)元素在計(jì)算機(jī)中的存儲(chǔ)關(guān)系。數(shù)據(jù)
的存儲(chǔ)結(jié)構(gòu)是指數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示,一種邏輯結(jié)構(gòu)可以表示成多種
存儲(chǔ)結(jié)構(gòu);而采用不同的存儲(chǔ)結(jié)構(gòu),其數(shù)據(jù)處理的效率是不同的。
9、下列描述中正確的是
A、數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu)必定是一一對(duì)應(yīng)的
B、由于計(jì)算機(jī)存儲(chǔ)空間是向量式的存儲(chǔ)結(jié)構(gòu),因此,數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)一定是線性
結(jié)構(gòu)
C、程序設(shè)計(jì)語(yǔ)言中的數(shù)據(jù)一般是順序存儲(chǔ)結(jié)構(gòu),因此,利用數(shù)組只能處理線性結(jié)
構(gòu)
D、以上三種說(shuō)法都不對(duì)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:數(shù)據(jù)的邏輯結(jié)構(gòu)是指反映數(shù)據(jù)元素之間邏輯關(guān)系的數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)的
邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)空間中的存放形式稱為數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)(也稱數(shù)據(jù)的物理結(jié)
構(gòu))。一般來(lái)說(shuō),一種數(shù)據(jù)的邏輯結(jié)構(gòu)根據(jù)需要可以表示成多種存儲(chǔ)結(jié)構(gòu),常用的
存儲(chǔ)結(jié)構(gòu)有順序、鏈接、索引等。
10、下列敘述中正確的是
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、循環(huán)鏈表是非線性結(jié)構(gòu)
D、雙向鏈表是非線性結(jié)構(gòu)
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:在數(shù)據(jù)結(jié)溝中,樹(shù)這類的數(shù)據(jù)結(jié)構(gòu)只有一個(gè)根結(jié)點(diǎn),但它不是線性結(jié)
構(gòu)。
11、下列描述中正確的是
A、線性鏈表是線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
B、棧與隊(duì)列是非線性結(jié)構(gòu)
C、雙向鏈表是非線性結(jié)構(gòu)
D、只有根結(jié)點(diǎn)的二叉樹(shù)是線性結(jié)構(gòu)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)稱為線性鏈表。線性表鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的基本單
位稱為存儲(chǔ)結(jié)點(diǎn),每個(gè)存儲(chǔ)結(jié)點(diǎn)包括數(shù)據(jù)域和指針域兩個(gè)組成部分。各數(shù)據(jù)元素之
間的前后件關(guān)系是由各結(jié)點(diǎn)的指針域來(lái)指示的,指向線性表中第一結(jié)點(diǎn)的指針
HEAD稱為頭指針,當(dāng)HEAD=NULL時(shí)稱為空表。棧、隊(duì)列和雙向鏈表是線性結(jié)
構(gòu),樹(shù)是一種簡(jiǎn)單的非線性結(jié)構(gòu)。在樹(shù)這種數(shù)據(jù)結(jié)構(gòu)中,所有數(shù)據(jù)元素的關(guān)系具有
明顯的層次特征。二叉樹(shù)是非線性結(jié)構(gòu)。線性結(jié)構(gòu)和非線性結(jié)構(gòu)是從數(shù)據(jù)的邏輯結(jié)
構(gòu)角度來(lái)講的,與該數(shù)據(jù)結(jié)構(gòu)中有多少個(gè)元素沒(méi)有關(guān)系,即使是空的二叉樹(shù)也是非
線性結(jié)構(gòu)。
12、下面敘述中正確的是
A、線性表是線性結(jié)構(gòu)
B、棧與隊(duì)列是非線性結(jié)構(gòu)
C、線性鏈表是非線性結(jié)構(gòu)
D、二叉樹(shù)是線性結(jié)構(gòu)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:線性表是最簡(jiǎn)單的、最常用的一種線性結(jié)構(gòu)。所謂線性鏈表指的是采
用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的線性表。棧和隊(duì)列其實(shí)是一種特殊的線性表。樹(shù)是一種簡(jiǎn)單的非
線性結(jié)構(gòu),二叉樹(shù)是樹(shù)的一種。
13、支持子程序調(diào)用的數(shù)據(jù)結(jié)構(gòu)是
A、棧
B、樹(shù)
C、隊(duì)列
D、二叉樹(shù)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:棧是一種限定在一端進(jìn)行插入與刪除的線性表。在主函數(shù)調(diào)用子函數(shù)
時(shí)?,要首先保存主函數(shù)當(dāng)前的狀態(tài),然后轉(zhuǎn)去執(zhí)行子函數(shù),把子函數(shù)的運(yùn)行結(jié)果返
回到主函數(shù)調(diào)用子函數(shù)時(shí)的位置,主函數(shù)再接著往下執(zhí)行,這種過(guò)程符合棧的特
點(diǎn)。所以一般采用棧式存儲(chǔ)方式。
14、下列數(shù)據(jù)結(jié)構(gòu)中,能夠按照“先進(jìn)后出”原則存取數(shù)據(jù)的是
A、循環(huán)隊(duì)列
B、棧
C、隊(duì)列
D、二叉樹(shù)
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:棧按照“先進(jìn)后出”(FILO)或“后進(jìn)先出”(LIFO)組織數(shù)據(jù);隊(duì)列是“先進(jìn)
先出”F(IFO)或“后進(jìn)后出”(LILO)的線性表。
15、下列關(guān)于棧敘述正確的是
A、棧頂元素最先能被刪除
B、棧頂元素最后才能被刪除
C、棧底元素永遠(yuǎn)不能被刪除
D、以上三種說(shuō)法都不對(duì)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:棧是先進(jìn)后出的線性表,棧頂?shù)脑刈钕缺粍h除,棧底的元素最后被
刪除。
16、下列關(guān)于棧的敘述中,正確的是
A、棧底元素一定是最后入棧的元素
B、棧頂元素一定是最先入棧的元素
C、棧操作遵循先進(jìn)后出的原則
D、以上三種說(shuō)法都不對(duì)
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:棧是限定只能在表的一端進(jìn)行插入和刪除操作的線性表,必須按“后
進(jìn)先出”的規(guī)則操作元素。
17、下列敘述中正確的是
A、在棧中,棧中元素隨棧底指針與棧頂指針的變化而動(dòng)態(tài)變化
B、在棧中,棧頂指針不變,棧中元素隨棧底指針的變化而動(dòng)態(tài)變化
C、在棧中,棧底指針不變,棧中元素隨棧頂指針的變化而動(dòng)態(tài)變化
D、上述三種說(shuō)法都不對(duì)
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:在棧中,允許插入與刪除的一端稱為棧頂,而不允許插入與刪除的另
一端稱為棧底。棧跟隊(duì)列不同,元素只能在棧項(xiàng)壓入或彈出,棧底指針不變,棧中
元素隨棧頂指針的變化而動(dòng)態(tài)變化,遵循后進(jìn)先出的規(guī)則。
18、一個(gè)棧的初始狀態(tài)為空?,F(xiàn)將元素1、2、3、4、5、A、B、C、D、E依次入
棧,然后再依次出棧,則元素出棧的順序是
A、12345ABCDE
B、EDCBA54321
C、ABCDE12345
D、54321EDCBA
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:棧是按照“先進(jìn)后出”或“后進(jìn)先出”的原則組織數(shù)據(jù)的。所以出棧順序
是EDCBA54321o
19、一個(gè)棧的初始狀態(tài)為空。現(xiàn)將元素1,2,3,A,B,C依次入棧,然后再依
次出棧,則元素出棧的順序是
A、1,2,3,A,B,C
B、C,B,A,1,2,3
C、C,B,A,3,2,1
D、1,2,3,C,B,A
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:棧是按照“先進(jìn)后出”或“后進(jìn)先出”的原則組織數(shù)據(jù)的「所以出棧順序
是CBA321。
20、下列關(guān)于棧的描述中錯(cuò)誤的是
A、棧是先進(jìn)后出的線性表
B、棧只能順序存儲(chǔ)
C、棧具有記憶作用
D、對(duì)棧的插入與刪除操作中,不需要改變棧底指針
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:棧是限定在一端進(jìn)行插入與刪除的線性表。棧頂(lop):插入數(shù)據(jù)(即
入棧)的一端;棧底(boltom):不能入棧也不能出棧的一端。棧存儲(chǔ)數(shù)據(jù)的原則:
“先進(jìn)后出”或“后進(jìn)先出'棧的特性是具有記憶作用。
21、按照“后進(jìn)先出”原則組織數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)是
A、隊(duì)列
B、棧
C、雙向鏈表
D、二叉樹(shù)
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:棧是限定在一端進(jìn)行插入與刪除的線性表。在棧中,允許插入與刪除
的一端稱為棧頂,不允許插入與刪除的另一端稱為棧底。棧頂元素總是最后被插入
的元素,也是最先被刪除的元素:棧底元素總是最先被插入的元素,也是最后才能
被刪除的元素。即棧是按照“后進(jìn)先出”(LastinFirstOut,簡(jiǎn)稱LIFO)或“先進(jìn)后
出“(FirstInLastOut,優(yōu)稱FILO)的原則組織數(shù)據(jù)的。因此,棧也稱為“后進(jìn)先出
表”或“先進(jìn)后出”表。
22、下列敘述中正確的是
A、棧是一種先進(jìn)先出的線性表
B、隊(duì)列是一種后進(jìn)先出的線性表
C、棧與隊(duì)列都是非線性結(jié)構(gòu)
D、以上三種說(shuō)法都不對(duì)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:棧是先進(jìn)后出的線性表,隊(duì)列是先進(jìn)先出的線性表,二者均為線性結(jié)
構(gòu)。
23、下列敘述中正確的是
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)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:本題主要考查了棧、隊(duì)列、循環(huán)隊(duì)列的概念,棧是先進(jìn)后出的線性
表.隊(duì)列是先進(jìn)先出的線性表c根據(jù)數(shù)據(jù)結(jié)構(gòu)中各數(shù)據(jù)元素之間的前后件關(guān)系的復(fù)
雜程度,一般將數(shù)據(jù)結(jié)為分為兩大類型:線性結(jié)構(gòu)與非線性結(jié)構(gòu)。有序線性表既可
以采用順序存儲(chǔ)結(jié)構(gòu),又可以采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。
24、下列關(guān)于棧的描述中正確的是
A、在棧中只能插入元素而不能刪除元素
B、在棧中只能刪除元素而不能插入元素
C、棧是特殊的線性表,只能在一端插入或刪除元素
D、棧是特殊的線性表,只能在一端插入元素,而在另一端刪除元素
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)新斤:棧是限定在一端進(jìn)行插入與刪除的線性表,在棧中,允許插入與刪除
的一端稱為棧頂,不允許插入與刪除的另一端稱為棧底。
國(guó)家二級(jí)C++機(jī)試(數(shù)據(jù)結(jié)構(gòu)與算法)
模擬試卷第5套
一、選擇題(本題共18題,每題1.0分,共18分。)
1、算法的有窮性是指()。
A、算法程序的運(yùn)行時(shí)間是有限的
B、算法程序所處理的數(shù)據(jù)量是有限的
C、算法程序的長(zhǎng)度是有限的
D、算法只能被有限的用戶使用
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:算法的有窮性,是指算法必須能在有限的時(shí)間內(nèi)做完,即算法必須能
在執(zhí)行有限個(gè)步驟之后終止。
2、算法的空間復(fù)雜度是指()。
A、算法在執(zhí)行過(guò)程中所需要的訂算機(jī)存儲(chǔ)空間
B、算法所處理的數(shù)據(jù)量
C、算法程序中的語(yǔ)句或指令條數(shù)
D、算法在執(zhí)行過(guò)程中所需要的臨時(shí)工作單元數(shù)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:算法的空間復(fù)雜度是指執(zhí)行這個(gè)算法所需要的內(nèi)存空間。這個(gè)內(nèi)存空
間包括算法程序所占的空間,輸入的初始數(shù)據(jù)所占的存儲(chǔ)空間以及算法執(zhí)行過(guò)程中
所需要的額外空間。
3、算法的時(shí)間復(fù)雜度是指(工
A、算法的執(zhí)行時(shí)間
B、算法所處理的數(shù)據(jù)量
C、算法程序中的語(yǔ)句或指令條數(shù)
D、算法在執(zhí)行過(guò)程中所需要的基本運(yùn)算次數(shù)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:算法的時(shí)間復(fù)雜度,是指執(zhí)行算法所需要的計(jì)算工作量。算法的工作
量可以用算法在執(zhí)行過(guò)程中所需基本運(yùn)算的執(zhí)行次數(shù)來(lái)度量。
4、下列敘述中正確的是()。
A、算法的效率只與問(wèn)題的規(guī)模有關(guān),而與數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)無(wú)關(guān)
B、算法的時(shí)間復(fù)雜度是指執(zhí)行算法所需要的計(jì)算工作量
C、數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu)是一一對(duì)應(yīng)的
D、算法的時(shí)間復(fù)雜度與空間復(fù)雜度一定相關(guān)
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:算法的時(shí)間復(fù)雜度是指執(zhí)行算法所需要的計(jì)算工作量。算法的工作量
用算法所執(zhí)行的基本運(yùn)算的次數(shù)來(lái)度量,而算法所執(zhí)行的基本運(yùn)算次數(shù)是問(wèn)題規(guī)模
的函數(shù);算法的空間復(fù)雜度一般是指執(zhí)行這個(gè)算法所需要的內(nèi)存空間。算法的時(shí)間
復(fù)雜度與空間復(fù)雜度并不相關(guān)。數(shù)據(jù)的邏輯結(jié)構(gòu)就是數(shù)據(jù)元素之間的邏輯關(guān)系,它
是從邏輯上描述數(shù)據(jù)元素之間的關(guān)系,是獨(dú)立于計(jì)算機(jī)的:數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是研究
數(shù)據(jù)元素和數(shù)據(jù)元素之間的關(guān)系如何在計(jì)算機(jī)中表示,它們并非一一對(duì)應(yīng)。算法的
執(zhí)行效率不僅與問(wèn)題的規(guī)模有關(guān),還與數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)有關(guān)。
5、下列敘述中正確的是()。
A、一個(gè)算法的空間復(fù)雜度大,則其時(shí)間復(fù)雜度也必定大
B、一個(gè)算法的空間復(fù)雜度大,則其時(shí)間復(fù)雜度必定小
C、一個(gè)算法的時(shí)間復(fù)雜度大,則其空間復(fù)雜度必定小
D、算法的時(shí)間復(fù)雜度與空間復(fù)雜度沒(méi)有直接關(guān)系
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:算法的復(fù)雜度主要包括時(shí)間復(fù)雜度和空間復(fù)雜度。算法的時(shí)間復(fù)雜度
是指執(zhí)行算法所需要的計(jì)算工作量,算法的工作量用算法所執(zhí)行的基本運(yùn)算次數(shù)來(lái)
度量,而算法所執(zhí)行的基本運(yùn)算次數(shù)是問(wèn)題規(guī)模的函數(shù),即算法的工作量=f(nj,
其中n是問(wèn)題的規(guī)模;算法的空間復(fù)雜度,一般是指執(zhí)行這個(gè)算法所需要的內(nèi)存空
間。一個(gè)算法所占用的存儲(chǔ)空間包拈算法程序所占用的空間、輸入的初始數(shù)據(jù)所占
的存儲(chǔ)空間以及算法執(zhí)行過(guò)程中所需要的額外空間。根據(jù)各自的定義可知,算法的
時(shí)間復(fù)雜度與空間復(fù)雜度并不相關(guān)。
6、數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是指()。
A、存儲(chǔ)在外存中的數(shù)據(jù)
B、數(shù)據(jù)所占的存儲(chǔ)空間量
C、數(shù)據(jù)在計(jì)算機(jī)中的順序存儲(chǔ)方式
D、數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:在對(duì)數(shù)據(jù)進(jìn)行處理時(shí),各數(shù)據(jù)元素在計(jì)算機(jī)中的存儲(chǔ)關(guān)系,即為數(shù)據(jù)
的存儲(chǔ)結(jié)構(gòu)。
7、下列描述中正確的是()。
A、數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu)必定是一一對(duì)應(yīng)的
B、由于計(jì)算機(jī)存儲(chǔ)空間是向量式的存儲(chǔ)結(jié)構(gòu),因此,數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)一定是線性
結(jié)構(gòu)
C、程序設(shè)計(jì)語(yǔ)言中的數(shù)據(jù)一般是順序存儲(chǔ)結(jié)構(gòu),因此,利用數(shù)組只能處理線性結(jié)
構(gòu)
D、以上三種說(shuō)法都不對(duì)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:數(shù)據(jù)的邏輯結(jié)構(gòu)是指反映數(shù)據(jù)元素之間邏輯關(guān)系的數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)的
邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)空間中的存放形式稱為數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)(也稱數(shù)據(jù)的物理結(jié)
構(gòu))。一般來(lái)說(shuō),一種數(shù)據(jù)的邏輯結(jié)構(gòu)根據(jù)需要可以表示成多種存儲(chǔ)結(jié)構(gòu),常用的
存儲(chǔ)結(jié)構(gòu)有順序、鏈接、索引等。
8、下列敘述中正確的是()。
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、循環(huán)鏈表是非線性結(jié)構(gòu)
D、雙向鏈表是非線性結(jié)構(gòu)
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:在數(shù)據(jù)結(jié)溝中,樹(shù)這類的數(shù)據(jù)結(jié)構(gòu)只有一個(gè)根結(jié)點(diǎn),但它不是線性結(jié)
構(gòu)。
9、下列數(shù)據(jù)結(jié)構(gòu)中,屬于非線性結(jié)構(gòu)的是()。
A、循環(huán)隊(duì)列
B、帶鏈隊(duì)列
C、二又樹(shù)
D、帶鏈棧
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:根據(jù)數(shù)據(jù)結(jié)構(gòu)中各數(shù)據(jù)元素之間的前后件關(guān)系的復(fù)雜程度,一般將數(shù)
據(jù)結(jié)構(gòu)分為兩大類:線性結(jié)構(gòu)和非線性結(jié)構(gòu)。循環(huán)隊(duì)列、帶鏈隊(duì)列和帶鏈棧都是線
性結(jié)構(gòu),而二叉樹(shù)是非線性結(jié)構(gòu)。
10、下列描述中正確的是()。
A、線性鏈表是線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
B、棧與隊(duì)列是非線性結(jié)構(gòu)
C、雙向鏈表是非線性結(jié)構(gòu)
D、只有根結(jié)點(diǎn)的二叉樹(shù)是線性結(jié)構(gòu)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)稱為線性鏈表。線性表鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的基本單
位稱為存儲(chǔ)結(jié)點(diǎn),每個(gè)存儲(chǔ)結(jié)點(diǎn)包括數(shù)據(jù)域和指針域兩個(gè)組成部分。各數(shù)據(jù)元素之
間的前后件關(guān)系是由各結(jié)點(diǎn)的指針域來(lái)指示的,指向線性表中第一結(jié)點(diǎn)的指針
HEAD稱為頭指針,當(dāng)HEAD=NULL時(shí)稱為空表。棧、隊(duì)列和雙向鏈表是線性結(jié)
構(gòu),樹(shù)是一種簡(jiǎn)單的非線性結(jié)構(gòu)。在樹(shù)這種數(shù)據(jù)結(jié)構(gòu)中,所有數(shù)據(jù)元素的關(guān)系具有
明顯的層次特征。二叉樹(shù)是非線性結(jié)構(gòu)。線性結(jié)構(gòu)和非線性結(jié)構(gòu)是從數(shù)據(jù)的邏輯結(jié)
構(gòu)角度來(lái)講的,與該數(shù)據(jù)結(jié)構(gòu)中有多少個(gè)元素沒(méi)有關(guān)系,即使是空的二叉樹(shù)也是非
線性結(jié)構(gòu)。
11、下面敘述中正確的是()。
A、線性表是線性結(jié)構(gòu)
B、棧與隊(duì)列是非線性結(jié)構(gòu)
C、線性鏈表是非線性結(jié)構(gòu)
D、二叉樹(shù)是線性結(jié)構(gòu)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:線性表是最簡(jiǎn)單的、最常用的一種線性結(jié)構(gòu)。所謂線性鏈表指的是采
用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的線性表。棧和隊(duì)列其實(shí)是一種特殊的線性表。樹(shù)是一種簡(jiǎn)單的非
線性結(jié)構(gòu),二叉樹(shù)是樹(shù)的一種。
12、下列關(guān)于棧的敘述正確的是()。
A、棧按“先進(jìn)先出”組織數(shù)據(jù)
B、棧按“先進(jìn)后出”組織數(shù)據(jù)
C、只能在棧底插入數(shù)據(jù)
D、不能刪除數(shù)據(jù)
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:棧是限定在一端進(jìn)行插入和刪除的線性表,允許進(jìn)行插入和刪除元素
的一端稱為棧頂,另一端稱為棧底。棧是按照“先進(jìn)后出”的原則組織數(shù)據(jù)的。
13、支持子程序調(diào)用的數(shù)據(jù)結(jié)構(gòu)是()。
A^棧
B、樹(shù)
C、隊(duì)列
D、二義樹(shù)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:棧是一種限定在一端進(jìn)行插入與刪除的線性表。在主函數(shù)調(diào)用子函數(shù)
時(shí),要首先保存主函數(shù)當(dāng)前的狀態(tài),然后轉(zhuǎn)去執(zhí)行子函數(shù),把子函數(shù)的運(yùn)行結(jié)果返
回到主函數(shù)調(diào)用子函數(shù)時(shí)的位置,主函數(shù)再接著往下執(zhí)行,這種過(guò)程符合棧的特
點(diǎn)。所以一般采用棧式存儲(chǔ)方式。
14、下列數(shù)據(jù)結(jié)構(gòu)中,能夠按照“先進(jìn)后出”原則存取數(shù)據(jù)的是()。
A、循環(huán)隊(duì)列
B、棧
C、隊(duì)列
D、二叉樹(shù)
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:棧按照“先進(jìn)后出”(FILO)或“后進(jìn)先出”(LIFO)組織數(shù)據(jù):隊(duì)列是“先
進(jìn)先出飛FIFO)或“后進(jìn)后出”(L1LO)的線性表。
15、下列關(guān)于棧敘述正確的是()。
A、棧頂元素最先能被刪除
B、棧頂元素最后才能被刪除
C、棧底元素永遠(yuǎn)不能被刪除
D、以上三種說(shuō)法都不對(duì)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:棧是先進(jìn)后出的線性表,棧頂?shù)脑刈钕缺粍h除,棧底的元素最后被
刪除。
16、下列敘述中正確的是()。
A、在棧中,棧中元素隨棧底指針與棧頂指針的變化而動(dòng)態(tài)變化
B、在棧中,棧頂指針不變,棧中元素隨棧底指針的變化而動(dòng)態(tài)變化
C、在棧中,棧底指針不變,棧中元素隨棧頂指針的變化而動(dòng)態(tài)變化
D、上述三種說(shuō)法都不對(duì)
標(biāo)準(zhǔn)答案:C
知識(shí)點(diǎn)解析:在棧中,允許插入與刪除的一端稱為棧頂,而不允許插入與刪除的另
一端稱為棧底。棧跟隊(duì)列不同,元素只能在棧頂壓入或彈出,棧底指針不變,棧中
元素隨棧頂指針的變化而動(dòng)態(tài)變化,遵循后進(jìn)先出的規(guī)則。
17、一個(gè)棧的初始狀態(tài)為空?,F(xiàn)將元素1、2、3、4、5、A、B、C、D、E依次入
棧,然后再依次出棧,則元素出棧的順序是()。
A、12345ABCDE
B、EDCBA54321
C、ABCDE12345
D、54321EDCBA
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析?:棧是按照“先進(jìn)后出”或“后進(jìn)先出”的原則組織數(shù)據(jù)的。所以出棧順序
是EDCBA54321o
18、下列關(guān)于棧的描述中錯(cuò)誤的是()。
A、棧是先進(jìn)后出的線性表
B、棧只能順序存儲(chǔ)
C、棧具有記憶作用
D、對(duì)棧的插入與刪除操作中,不需要改變棧底指針
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:棧是限定在一端進(jìn)行插入與刪除的線性表。棧頂(lop):插入數(shù)據(jù)(即
入棧)的一端:棧底(hotmm):不能入棧也不能出棧的一端。棧存儲(chǔ)數(shù)據(jù)的原則:
“先進(jìn)后出”或“后進(jìn)先出”。棧的特性是具有記憶作用。
國(guó)家二級(jí)C++機(jī)試(數(shù)據(jù)結(jié)構(gòu)與算法)
模擬試卷第6套
一、選擇題(本題共23題,每題1.0分,共23分。)
1、下列數(shù)據(jù)結(jié)構(gòu)中,不能采用順序存儲(chǔ)結(jié)構(gòu)的是
A、棧
B、堆
C、隊(duì)列
D、非完全二叉樹(shù)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)解析:堆中某個(gè)結(jié)點(diǎn)的值總是不大于或不小于其父結(jié)點(diǎn)的值、堆總是一棵完
全二叉樹(shù),可以以順序存儲(chǔ)結(jié)構(gòu)存儲(chǔ);隊(duì)列的存儲(chǔ)結(jié)構(gòu)分為鏈?zhǔn)酱鎯?chǔ)、順序存儲(chǔ)兩
種:棧作為一種數(shù)據(jù)結(jié)溝,是一種只能在一端進(jìn)行插入和刪除操作的特殊線性表,
可以以順序存儲(chǔ)結(jié)構(gòu)存儲(chǔ)。
2、設(shè)二叉樹(shù)共有375個(gè)結(jié)點(diǎn),其中度為2的結(jié)點(diǎn)有187個(gè)。則度為1的結(jié)點(diǎn)個(gè)數(shù)
是
A、0
B、1
C、188
D、不可能有這樣的二叉樹(shù)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:二叉樹(shù)的每個(gè)結(jié)點(diǎn)至多只有二棵子樹(shù)(不存在度大于2的結(jié)點(diǎn)),二叉
樹(shù)的子樹(shù)有左右之分,次序不能顛倒。二叉樹(shù)的第i層至多有211個(gè)結(jié)點(diǎn);深度為
k的二叉樹(shù)至多有2匕1個(gè)結(jié)點(diǎn);對(duì)任何一棵二叉樹(shù)T,如果其終端結(jié)點(diǎn)數(shù)為項(xiàng),度
為2的結(jié)點(diǎn)數(shù)為】12,貝iJnO=n2+l。本題中,度為2的結(jié)點(diǎn)有187個(gè),葉子結(jié)點(diǎn)應(yīng)該
有187+1=188個(gè),度為1的結(jié)點(diǎn)個(gè)數(shù)=375-187-188=0。
3、在帶鏈隊(duì)列中,經(jīng)過(guò)一系列正常的操作后,如果front=rear,則隊(duì)列中的元素個(gè)
數(shù)為
A、0或1
B、0
C、1
D、隊(duì)列滿
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:隊(duì)列是一種特殊的線性表,特殊之處在于它只允許在表的前端(front)
進(jìn)行刪除操作,而在表的后端(rear)進(jìn)行插入操作,和棧一樣,隊(duì)列是一種操作受
限制的線性表。進(jìn)行插入操作的端稱為隊(duì)尾,進(jìn)行刪除操作的端稱為隊(duì)頭。隊(duì)列的
鏈?zhǔn)酱鎯?chǔ)也稱為鏈隊(duì)列。為了便于操作,可給鏈隊(duì)列添加1個(gè)頭結(jié)點(diǎn),并令頭指針
指向頭結(jié)點(diǎn)。隊(duì)列為空的判斷條件是頭指針和尾指針的值相同,且均指向頭結(jié)點(diǎn)。
當(dāng)隊(duì)列為空(0)或1時(shí),front二rear。
4、設(shè)一棵樹(shù)的度為3,其中沒(méi)有度為2的結(jié)點(diǎn),且葉子結(jié)點(diǎn)數(shù)為5。該樹(shù)中度為3
的結(jié)點(diǎn)數(shù)為
A、1
B、2
C、3
D、不可能有這樣的樹(shù)
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:樹(shù)的度是指一棵樹(shù)中,最大的結(jié)點(diǎn)的度稱為樹(shù)的度。本題中樹(shù)的度為
3,那么樹(shù)中最少有一個(gè)結(jié)點(diǎn)的度為3。而樹(shù)中沒(méi)有度為2的結(jié)點(diǎn),葉子結(jié)點(diǎn)數(shù)為
5,度為1的結(jié)點(diǎn)下面只有一個(gè)葉子結(jié)點(diǎn)。因此,該樹(shù)中含2個(gè)度為3的結(jié)點(diǎn)滿足
題目要求。
5、設(shè)二叉樹(shù)共有500個(gè)結(jié)點(diǎn),其中葉子結(jié)點(diǎn)有250個(gè)。則度為2的結(jié)點(diǎn)個(gè)數(shù)是
A、0
B、1
C、249
D、不可能有這樣的二叉樹(shù)
標(biāo)準(zhǔn)答案:c
知識(shí)點(diǎn)解析:二叉樹(shù)的每個(gè)結(jié)點(diǎn)至多只有二棵子樹(shù)(不存在度大于2的結(jié)點(diǎn)),二叉
樹(shù)的子樹(shù)有左右之分,次序不能顛倒。二叉樹(shù)的第i層至多有211個(gè)結(jié)點(diǎn);深度為
k的二叉樹(shù)至多有2卜1個(gè)結(jié)點(diǎn);對(duì)任何一棵二叉樹(shù)T,如果其終端結(jié)點(diǎn)數(shù)為皿,度
為2的結(jié)點(diǎn)數(shù)為112,則n0=n2+l。本題中,葉子結(jié)點(diǎn)有250個(gè),度為2的結(jié)點(diǎn)數(shù)為
n2=no-1=250-1=249。
6、T列敘述中正確的是
A、帶鏈棧的棧底指針是固定的
B、帶鏈棧的棧底指針是隨棧的操作而動(dòng)態(tài)變化的
C、若帶鏈隊(duì)列的隊(duì)頭指針與隊(duì)尾指針相同,則隊(duì)列為空
D、若帶鏈隊(duì)列的隊(duì)頭指針與隊(duì)尾指針相同,則隊(duì)列中至少有一個(gè)元素
標(biāo)準(zhǔn)答案:B
知識(shí)點(diǎn)解析:棧(stack)又名堆棧,它是一種運(yùn)算受限的線性表。其限制是僅允許在
表的一端進(jìn)行插入和刪除運(yùn)算。這一端被稱為棧頂,相對(duì)地,把另一端稱為棧底。
向一個(gè)棧插入新元素又禰作進(jìn)棧、入?;驂簵?,它是把新元素放到棧頂元素的上
面,使之成為新的棧頂元素;從一個(gè)棧刪除元素又稱作出?;蛲藯#前阎斣?/p>
素刪除掉,使其相鄰的元素成為新的棧頂元素。帶鏈棧的棧底指針是隨棧的操作而
動(dòng)態(tài)變化的;若帶鏈隊(duì)列的隊(duì)頭指針與隊(duì)尾指針相同,則隊(duì)列可能為0也可能為
lo
7、帶鏈隊(duì)列空的條件是
A、front=rear=NULL
B、front=rear-=-1
C、front=NULL且rear=-1
D、front--1且rear_NULL
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:帶鏈隊(duì)列空的條件有兩個(gè):一個(gè)是front=rcar,一個(gè)是他們都等于
空。
8、設(shè)一棵樹(shù)的度為3,其中沒(méi)有度為2的結(jié)點(diǎn),且葉子結(jié)點(diǎn)數(shù)為6。該樹(shù)中度為3
的結(jié)點(diǎn)數(shù)為
A、1
B、2
C、3
D、不可能有這樣的樹(shù)
標(biāo)準(zhǔn)答案:D
知識(shí)點(diǎn)0析:樹(shù)的度是由一棵樹(shù)中,最大的結(jié)點(diǎn)的度稱為樹(shù)的度。本題中樹(shù)的度為
3,也就是最少有一個(gè)度為3的結(jié)點(diǎn)。要求沒(méi)有度為2的結(jié)點(diǎn),且葉子結(jié)點(diǎn)為6,
如果要有度為3的結(jié)點(diǎn),那么最多只有5個(gè)葉子結(jié)點(diǎn),而畫(huà)不出6個(gè)葉子結(jié)點(diǎn)。因
此這樣的樹(shù)是沒(méi)有的。
9、下列敘述中正確的是
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)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:為充分利用向量空間,克服“假溢出、,現(xiàn)象的方法是:將向星空間想象
為一個(gè)首尾相接的圓環(huán),并稱這種向量為循環(huán)向量。存儲(chǔ)在其中的隊(duì)列稱為循環(huán)隊(duì)
列(CircularQueue)。線性結(jié)構(gòu)是一個(gè)有序數(shù)據(jù)元素的集合。常用的線性結(jié)構(gòu)有:線
性表,棧,隊(duì)列,雙隊(duì)列,數(shù)組,串。常見(jiàn)的非線性結(jié)構(gòu)有:二維數(shù)組,多維數(shù)
組,廣義表,樹(shù)(二叉樹(shù)等),圖。
10、設(shè)某棵樹(shù)的度為3,其中度為3、2、1的結(jié)點(diǎn)個(gè)數(shù)分別為3、0、4。則該樹(shù)中
的葉子結(jié)點(diǎn)數(shù)為
A、7
R、8
C、6
D、不可能有這樣的樹(shù)
標(biāo)準(zhǔn)答案:A
知識(shí)點(diǎn)解析:樹(shù)的度是由一棵樹(shù)中,最大的結(jié)點(diǎn)的度稱為“樹(shù)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026春招:徐工集團(tuán)面試題及答案
- 賈彩燕課件教學(xué)課件
- 2026春招:祥鵬航空試題及答案
- 貸款政策課件
- 貨運(yùn)司機(jī)安全培訓(xùn)行業(yè)分析
- 貨運(yùn)企業(yè)安全培訓(xùn)內(nèi)容課件
- 醫(yī)療人員職業(yè)操守培養(yǎng)
- 婦產(chǎn)科疾病預(yù)防與健康管理
- 心理咨詢服務(wù)發(fā)展匯報(bào)
- 護(hù)理教育技術(shù)發(fā)展與創(chuàng)新
- 云南師大附中2026屆高三高考適應(yīng)性月考卷(六)思想政治試卷(含答案及解析)
- 建筑安全風(fēng)險(xiǎn)辨識(shí)與防范措施
- CNG天然氣加氣站反恐應(yīng)急處置預(yù)案
- 定額〔2025〕1號(hào)文-關(guān)于發(fā)布2018版電力建設(shè)工程概預(yù)算定額2024年度價(jià)格水平調(diào)整的通知
- 糖尿病周圍神經(jīng)病變的篩查
- 《生活中的經(jīng)濟(jì)學(xué)》課件
- 地質(zhì)勘查現(xiàn)場(chǎng)安全風(fēng)險(xiǎn)管控清單
- JJG 52-2013彈性元件式一般壓力表、壓力真空表和真空表
- 高考生物學(xué)二輪復(fù)習(xí)備課素材:多變量實(shí)驗(yàn)題的類型及審答思維
- 瀝青瀝青混合料試驗(yàn)作業(yè)指導(dǎo)書(shū)
- 鋼板樁支護(hù)工程投標(biāo)文件(54頁(yè))
評(píng)論
0/150
提交評(píng)論