版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
一、判斷題:1、線性表的邏輯順序與物理順序總是一致的。(
)2、線性表的順序存儲(chǔ)表達(dá)優(yōu)于鏈?zhǔn)酱鎯?chǔ)表達(dá)。(
)3、線性表若采用鏈?zhǔn)酱鎯?chǔ)表達(dá)時(shí)所有結(jié)點(diǎn)之間的存儲(chǔ)單元地址可連續(xù)可不連續(xù)。(
)4、二維數(shù)組是其數(shù)組元素為線性表的線性表。(
)5、每種數(shù)據(jù)結(jié)構(gòu)都應(yīng)具有三種基本運(yùn)算:插入、刪除和搜索。(
)6、數(shù)據(jù)結(jié)構(gòu)概念涉及數(shù)據(jù)之間的邏輯結(jié)構(gòu),數(shù)據(jù)在計(jì)算機(jī)中的存儲(chǔ)方式和數(shù)據(jù)的運(yùn)算三個(gè)方面。(
)7、線性表中的每個(gè)結(jié)點(diǎn)最多只有一個(gè)前驅(qū)和一個(gè)后繼。(
)
8、線性的數(shù)據(jù)結(jié)構(gòu)可以順序存儲(chǔ),也可以鏈接存儲(chǔ)。非線性的數(shù)據(jù)結(jié)構(gòu)只能鏈接存儲(chǔ)。(
)9、棧和隊(duì)列邏輯上都是線性表。(
)
10、單鏈表從任何一個(gè)結(jié)點(diǎn)出發(fā),都能訪問(wèn)到所有結(jié)點(diǎn)
(
)11、刪除二叉排序樹(shù)中一個(gè)結(jié)點(diǎn),再重新插入上去,一定能得到本來(lái)的二叉排序樹(shù)。(
)12、快速排序是排序算法中最快的一種。(
)13、多維數(shù)組是向量的推廣。(
)14、一般樹(shù)和二叉樹(shù)的結(jié)點(diǎn)數(shù)目都可認(rèn)為0。
(
)15、直接選擇排序是一種不穩(wěn)定的排序方法。(
)16、98、對(duì)一個(gè)堆按層次遍歷,不一定能得到一個(gè)有序序列。(
)17、在只有度為0和度為k的結(jié)點(diǎn)的k叉樹(shù)中,設(shè)度為0的結(jié)點(diǎn)有n0個(gè),度為k的結(jié)點(diǎn)有nk個(gè),則有n0=nk+1。(
)18、折半搜索只合用與有序表,涉及有序的順序表和有序的鏈表。(
)19、堆棧在數(shù)據(jù)中的存儲(chǔ)原則是先進(jìn)先出。(
)20、隊(duì)列在數(shù)據(jù)中的存儲(chǔ)原則是后進(jìn)先出。(
)21、用相鄰矩陣表達(dá)圖所用的存儲(chǔ)空間大小與圖的邊數(shù)成正比。(
)22、哈夫曼樹(shù)一定是滿二叉樹(shù)。(
)23、程序是用計(jì)算機(jī)語(yǔ)言表述的算法。(
)24、線性表的順序存儲(chǔ)結(jié)構(gòu)是通過(guò)數(shù)據(jù)元素的存儲(chǔ)地址直接反映數(shù)據(jù)元素的邏輯關(guān)系。(
)25、用一組地址連續(xù)的存儲(chǔ)單元存放的元素一定構(gòu)成線性表。(
)26、堆棧、隊(duì)列和數(shù)組的邏輯結(jié)構(gòu)都是線性表結(jié)構(gòu)。(
)27、給定一組權(quán)值,可以唯一構(gòu)造出一棵哈夫曼樹(shù)。(
)28、只有在初始數(shù)據(jù)為逆序時(shí),冒泡排序所執(zhí)行的比較次數(shù)最多。(
)29、希爾排序在較率上較直接接入排序有較大的改善。但是不穩(wěn)定的。(
)30、在平均情況下,快速排序法最快,堆積排序法最節(jié)省空間。(
)31、快速排序法是一種穩(wěn)定性排序法。(
)32、算法一定要有輸入和輸出。(
)33、算法分析的目的旨在分析算法的效率以求改善算法。(
)34、非空線性表中任意一個(gè)數(shù)據(jù)元素都有且僅有一個(gè)直接后繼元素。(
)35、數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)不僅有順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu),尚有索引結(jié)構(gòu)與散列結(jié)構(gòu)。(
)36、若頻繁地對(duì)線性表進(jìn)行插入和刪除操作,該線性表采用順序存儲(chǔ)結(jié)構(gòu)更合適。(
)37、若線性表采用順序存儲(chǔ)結(jié)構(gòu),每個(gè)數(shù)據(jù)元素占用4個(gè)存儲(chǔ)單元,第12個(gè)數(shù)據(jù)元素的存儲(chǔ)地址為144,則第1個(gè)數(shù)據(jù)元素的存儲(chǔ)地址是101。(
)38、若長(zhǎng)度為n的線性表采用順序存儲(chǔ)結(jié)構(gòu),刪除表的第i個(gè)元素之前需要移動(dòng)表中n-i+1個(gè)元素。(
)39、符號(hào)p->next出現(xiàn)在表達(dá)式中表達(dá)p所指的那個(gè)結(jié)點(diǎn)的內(nèi)容。(
)40、要將指針p移到它所指的結(jié)點(diǎn)的下一個(gè)結(jié)點(diǎn)是執(zhí)行語(yǔ)句p←p->next。(
)41、若某堆棧的輸入序列為1,2,3,4,則4,3,1,2不也許是堆棧的輸出序列之一。(
)42、線性鏈表中各個(gè)鏈結(jié)點(diǎn)之間的地址不一定要連續(xù)。(
)43、程序就是算法,但算法不一定是程序。(
)44、線性表只能采用順序存儲(chǔ)結(jié)構(gòu)或者鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。(
)45、線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)是通過(guò)指針來(lái)間接反映數(shù)據(jù)元素之間邏輯關(guān)系的。(
)46、除插入和刪除操作外,數(shù)組的重要操作尚有存取、修改、檢索和排序等。(
)47、稀疏矩陣中0元素的分布有規(guī)律,因此可以采用三元組方法進(jìn)行壓縮存儲(chǔ)。(
)48、不管堆棧采用何種存儲(chǔ)結(jié)構(gòu),只要堆棧不空,可以任意刪除一個(gè)元素。(
)49、擬定串T在串S中初次出現(xiàn)的位置的操作稱為串的模式匹配。(
)50、深度為h的非空二叉樹(shù)的第i層最多有2i-1
個(gè)結(jié)點(diǎn)。(
)51、滿二叉樹(shù)也是完全二叉樹(shù)。(
)52、已知一棵二叉樹(shù)的前序序列和后序序列可以唯一地構(gòu)造出該二叉樹(shù)。(
)53、非空二叉排序樹(shù)的任意一棵子樹(shù)也是二叉排序樹(shù)。(
)54、對(duì)一棵二叉排序樹(shù)進(jìn)行前序遍歷一定可以得到一個(gè)按值有序的序列。(
)55、一個(gè)廣義表的深度是指該廣義表展開(kāi)后所含括號(hào)的層數(shù)。(
)56、散列表的查找效率重要取決于所選擇的散列函數(shù)與解決沖突的方法。(
)57、序列初始為逆序時(shí),冒泡排序法所進(jìn)行的元素之間的比較次數(shù)最多。(
)58、已知指針P指向鍵表L中的某結(jié)點(diǎn),執(zhí)行語(yǔ)句P=P-〉next不會(huì)刪除該鏈表中的結(jié)點(diǎn)。(
)59、在鏈隊(duì)列中,即使不設(shè)立尾指針也能進(jìn)行入隊(duì)操作。(
)60、假如一個(gè)串中的所有字符均在另一串中出現(xiàn),則說(shuō)前者是后者的子串。(
)61、設(shè)與一棵樹(shù)T所相應(yīng)的二叉樹(shù)為BT,則與T中的葉子結(jié)點(diǎn)所相應(yīng)的BT中的結(jié)點(diǎn)也一定是葉子結(jié)點(diǎn)。(
)62、若圖G的最小生成樹(shù)不唯一,則G的邊數(shù)一定多于n-1,并且權(quán)值最小的邊有多條(其中n為G的頂點(diǎn)數(shù))。(
)63、給出不同的輸入序列建造二叉排序樹(shù),一定得到不同的二叉排序樹(shù)。(
)64、由于希爾排序的最后一趟與直接插入排序過(guò)程相同,因此前者一定比后者花費(fèi)的時(shí)間多。(
)65、程序越短,程序運(yùn)營(yíng)的時(shí)間就越少。(
)66、采用循環(huán)鏈表作為存儲(chǔ)結(jié)構(gòu)的隊(duì)列就是循環(huán)隊(duì)列。(
)67、堆棧是一種插入和刪除操作在表的一端進(jìn)行的線性表。(
)68、一個(gè)任意串是其自身的子串。(
)69、哈夫曼樹(shù)一定是完全二叉樹(shù)。(
)70、帶權(quán)連通圖中某一頂點(diǎn)到圖中另一定點(diǎn)的最短途徑不一定唯一。(
)71、折半查找方法可以用于按值有序的線性鏈表的查找。(
)72、稀疏矩陣壓縮存儲(chǔ)后,必會(huì)失效掉隨機(jī)存取功能。(
)73、由一棵二叉樹(shù)的前序序列和后序序列可以唯一擬定它。(
)74、在n個(gè)結(jié)點(diǎn)的元向圖中,若邊數(shù)在于n-1,則該圖必是連通圖。(
)75、在完全二叉樹(shù)中,若某結(jié)點(diǎn)元左孩子,則它必是葉結(jié)點(diǎn)。(
)76、若一個(gè)有向圖的鄰接矩陣中,對(duì)角線以下元素均為0,則該圖的拓?fù)溆行蛐蛄斜厝淮嬖?。?/p>
)77、樹(shù)的帶權(quán)途徑長(zhǎng)度最小的二叉樹(shù)中必然沒(méi)有度為1的結(jié)點(diǎn)。(
)78、二叉樹(shù)可以用0≤度≤2的有序樹(shù)來(lái)表達(dá)。(
)79、一組權(quán)值,可以唯一構(gòu)造出一棵哈夫曼樹(shù)。(
)
80、101,88,46,70,34,39,45,58,66,10)是堆;(
)81、將一棵樹(shù)轉(zhuǎn)換成二叉樹(shù)后,根結(jié)點(diǎn)沒(méi)有左子樹(shù);(
)82、用樹(shù)的前序遍歷和中序遍歷可以導(dǎo)出樹(shù)的后序遍歷;(
)83、在非空線性鏈表中由p所指的結(jié)點(diǎn)后面插入一個(gè)由q所指的結(jié)點(diǎn)的過(guò)程是依次執(zhí)行語(yǔ)句:q->next=p->next;p->next=q。(
)84、非空雙向循環(huán)鏈表中由q所指的結(jié)點(diǎn)后面插入一個(gè)由p指的結(jié)點(diǎn)的動(dòng)作依次為:p->prior=q,
p->next=q->next,q->next=p,q->prior->next←p。(
)85、刪除非空鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的堆棧(設(shè)棧頂指針為top)的一個(gè)元素的過(guò)程是依次執(zhí)行:p=top,top=
p->next,free
(p)。(
)86、哈希的查找無(wú)需進(jìn)行關(guān)鍵字的比較。(
)87、一個(gè)好的哈希函數(shù)應(yīng)使函數(shù)值均勻的分布在存儲(chǔ)空間的有效地址范圍內(nèi),以盡也許減少?zèng)_突。(
)88、排序是計(jì)算機(jī)程序設(shè)計(jì)中的一種重要操作,它的功能是將一個(gè)數(shù)據(jù)元素(或記錄)的任意序列,重新排列成一個(gè)按關(guān)鍵字有序的序列。(
)89、隊(duì)列是一種可以在表頭和表尾都能進(jìn)行插入和刪除操作的線性表。(
)90、在索引順序表上實(shí)現(xiàn)分塊查找,在等概率查找情況下,其平均查找長(zhǎng)度不與表的個(gè)數(shù)有關(guān),而與每一塊中的元素個(gè)數(shù)有關(guān)。(
)91、對(duì)于有向圖,頂點(diǎn)的度分為入度和出度,入度是以該頂點(diǎn)為終點(diǎn)的入邊數(shù)目;出度是以該頂點(diǎn)為起點(diǎn)的出邊數(shù)目,該頂點(diǎn)的度等于其入度和出度之和。(
)92、無(wú)向圖的鄰接矩陣是對(duì)稱的有向圖的鄰接矩陣是不對(duì)稱的。(
)93、具有n個(gè)頂點(diǎn)的連通圖的生成樹(shù)具有n-1條邊(
)二、填空題:1、《數(shù)據(jù)結(jié)構(gòu)》課程討論的重要內(nèi)容是數(shù)據(jù)的邏輯結(jié)構(gòu)、存儲(chǔ)結(jié)構(gòu)和______________。2、數(shù)據(jù)結(jié)構(gòu)算法中,通常用時(shí)間復(fù)雜度和________(dá)___(dá)_____(dá)__兩種方法衡量其效率。3、一個(gè)算法一該具有___(dá)___,___(dá)__(dá)_,____(dá),_____(dá)_和____這五種特性。4、若頻繁地對(duì)線性表進(jìn)行插入與刪除操作,該線性表應(yīng)采用___(dá)__(dá)__(dá)___(dá)__存儲(chǔ)結(jié)構(gòu)。5、在非空線性表中除第一個(gè)元素外,集合中每個(gè)數(shù)據(jù)元素只有一個(gè)__(dá)____(dá)_;除最后一個(gè)元素之外,集合中每個(gè)數(shù)據(jù)元素均只有一個(gè)__(dá)______(dá)_。6、線性表中的每個(gè)結(jié)點(diǎn)最多有__(dá)______前驅(qū)和__(dá)________(dá)__后繼。7、___(dá)___(dá)鏈表從任何一個(gè)結(jié)點(diǎn)出發(fā),都能訪問(wèn)到所有結(jié)點(diǎn)。8、鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中的結(jié)點(diǎn)包含___(dá)__(dá)_______域,______(dá)_______(dá)__域。9、在雙向鏈表中,每個(gè)結(jié)點(diǎn)具有兩個(gè)指針域,一個(gè)指向______結(jié)點(diǎn),另一個(gè)指向__(dá)____(dá)__結(jié)點(diǎn)。10、某帶頭結(jié)點(diǎn)的單鏈表的頭指針head,鑒定該單鏈表非空的條件_________(dá)_____。11、在雙向鏈表中,每個(gè)結(jié)點(diǎn)具有兩個(gè)指針域,一個(gè)指向___(dá)____(dá)結(jié)點(diǎn),另一個(gè)指向_____結(jié)點(diǎn)。12、已知指針p指向單鏈表中某個(gè)結(jié)點(diǎn),則語(yǔ)句p->next=p->next->next的作用__刪除p
的后繼結(jié)點(diǎn)_。13、已知在結(jié)點(diǎn)個(gè)數(shù)大于1的單鏈表中,指針p指向某個(gè)結(jié)點(diǎn),則下列程序段結(jié)束時(shí),指針q指向*p的____(dá)______(dá)___結(jié)點(diǎn)。q=p;while(q->next!=p)
q=q->next;14、若要在單鏈表結(jié)點(diǎn)*P后插入一結(jié)點(diǎn)*S,執(zhí)行的語(yǔ)句___(dá)___(dá)____(dá)___(dá)__。15、線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)地址空間可以___(dá)______(dá),而向量存儲(chǔ)必須是地址空間_____(dá)____(dá)__。16、棧結(jié)構(gòu)允許進(jìn)行刪除操作的一端為_(kāi)_________(dá)___。17、在棧的順序?qū)崿F(xiàn)中,棧頂指針top,棧為空條件__(dá)_____(dá)__(dá)____(dá)_。18、對(duì)于單鏈表形式的隊(duì)列,其空隊(duì)列的F指針和R指針都等于__(dá)__________(dá)______。19、若數(shù)組s[0..n-1]為兩個(gè)棧s1和s2的共用存儲(chǔ)空間,僅當(dāng)s[0..n-1]全滿時(shí),各棧才不能進(jìn)行棧操作,則為這兩個(gè)棧分派空間的最佳方案是:s1和s2的棧頂指針的初值分別為__(dá)____(dá)___(dá)。20、允許在線性表的一端插入,另一端進(jìn)行刪除操作的線性表稱為_(kāi)____(dá)__(dá)。插入的一端為_(kāi)____(dá)_,刪除的一端為_(kāi)_____。21、設(shè)數(shù)組A[m]為循環(huán)隊(duì)列Q的存儲(chǔ)空間,font為頭指針,rear?yàn)槲仓羔?,鑒定Q為空隊(duì)列的條件___(dá)_____(dá)___(dá)___(dá)_____(dá)_。22、對(duì)于順序存儲(chǔ)的隊(duì)列,存儲(chǔ)空間大小為n,頭指針為F,尾指針為R。若在邏輯上看一個(gè)環(huán),則隊(duì)列中元素的個(gè)數(shù)為_(kāi)_____(dá)_____。23、已知循環(huán)隊(duì)列的存儲(chǔ)空間為數(shù)組dat(yī)a[21],且頭指針和尾指針?lè)謩e為8和3,則該隊(duì)列的當(dāng)前長(zhǎng)度_______(dá)___。24、一個(gè)串的任意個(gè)連續(xù)的字符組成的子序列稱為該串的______(dá)__,包含該子串的串稱為__(dá)______。25、求串T在主串S中初次出現(xiàn)的位置的操作是__(dá)______(dá)___(dá)_____。26、在初始為空的隊(duì)列中插入元素A,B,C,D以后,緊接著作了兩次刪除操作,此時(shí)的隊(duì)尾元素是____(dá)______。27、在長(zhǎng)度為n的循環(huán)隊(duì)列中,刪除其節(jié)點(diǎn)為x的時(shí)間復(fù)雜度為__(dá)_____(dá)__(dá)____(dá)__。28、已知廣義表L為空,其深度為__(dá)_________。29、已知一順序存儲(chǔ)的線性表,每個(gè)結(jié)點(diǎn)占用k個(gè)單元,若第一個(gè)結(jié)點(diǎn)的地址為DA1,則第i個(gè)結(jié)點(diǎn)的地址為_(kāi)________(dá)__(dá)___。30、設(shè)一行優(yōu)先順序存儲(chǔ)的數(shù)組A[5][6],A[0][0]的地址為1100,且每個(gè)元素占2個(gè)存儲(chǔ)單元,則A[2][3]的地址為_(kāi)___(dá)___(dá)______(dá)。31、設(shè)有二維數(shù)組A[9][19],其每個(gè)元素占兩個(gè)字節(jié),第一個(gè)元素的存儲(chǔ)地址為100,若按行優(yōu)先順序存儲(chǔ),則元素A[6,6]的存儲(chǔ)地址為_(kāi)____(dá)__(dá)_____(dá)__,按列優(yōu)順序存儲(chǔ),元素A[6,6]的存儲(chǔ)地址為_(kāi)______(dá)___(dá)____。32、在進(jìn)行直接插入排序時(shí),
其數(shù)據(jù)比較次數(shù)與數(shù)據(jù)的初始排列______(dá)__關(guān);而在進(jìn)行直接選擇排序時(shí),其數(shù)據(jù)比較次數(shù)與數(shù)據(jù)的初始排列___(dá)__(dá)__(dá)___關(guān)。33、假設(shè)以行為優(yōu)先存儲(chǔ)的三維數(shù)組A[5][6][7],A[0][0][0]的地址為1100,每個(gè)元素占兩個(gè)存儲(chǔ)單元,則A[4][3][2]的地址為_(kāi)______。34、設(shè)二維數(shù)組A[m][n]按列優(yōu)先存儲(chǔ),每個(gè)元素占1個(gè)存儲(chǔ)單元,元素A00的存儲(chǔ)地址loc(A00),則Aij的存儲(chǔ)地址loc(Aij)=_______(dá)____(dá)_____(dá)__(dá)__(dá)。35、稀疏矩陣一般采用__(dá)______(dá)__方法進(jìn)行壓縮存儲(chǔ)。36、稀疏矩陣可用_________進(jìn)行壓縮存儲(chǔ),存儲(chǔ)時(shí)需存儲(chǔ)非零元的______(dá)__(dá)、___(dá)__(dá)___、_______(dá)_。37、若矩陣中所有非零元素都集中在以主對(duì)角線為中心的帶狀區(qū)域中,區(qū)域外的值全為0,則稱為_(kāi)__(dá)____(dá)__(dá)_。38、若一個(gè)n
階矩陣A中的元素滿足:Aij=Aji
(0<=I
,j<=n-1)則稱A為_(kāi)__(dá)_______(dá)__矩陣;若主對(duì)角線上方(或下方)的所有元素均為零時(shí),稱該矩陣為_(kāi)____(dá)_________。39、對(duì)于上三角形和下三角形矩陣,分別以按行存儲(chǔ)和按列存儲(chǔ)原則進(jìn)行壓縮存儲(chǔ)到數(shù)組M[k]中,若矩陣中非0元素為Aij,則k相應(yīng)為_(kāi)_______和______(dá)___(dá)_。40、設(shè)有一上三角形矩陣A[5][5]按行壓縮存儲(chǔ)到數(shù)組B中,B[0]的地址為100,每個(gè)元素占2個(gè)單元,則A[3][2]地址為_(kāi)___(dá)___(dá)___(dá)__。41、廣義表(A,(a,b),d,e,((i,j),k)),則廣義表的長(zhǎng)度為_(kāi)___(dá)____(dá)___,深度為_(kāi)______(dá)____。42、已知廣義表A=((a,b,c),(d,e,f)),則運(yùn)算head(head
(tail(A))))=___
________。43、已知廣義表ls
=(a,(b,c,d),e),運(yùn)用head和tail函數(shù)取出ls中的原子b的運(yùn)算是__(dá)___。44、在樹(shù)結(jié)構(gòu)里,有且僅有一個(gè)結(jié)點(diǎn)沒(méi)有前驅(qū),稱為根。非根結(jié)點(diǎn)有且僅有一個(gè)_____(dá)__(dá)____,且存在一條從根到該結(jié)點(diǎn)的____(dá)___(dá)__(dá)_____(dá)_。45、度數(shù)為0的結(jié)點(diǎn),即沒(méi)有子樹(shù)的結(jié)點(diǎn)叫作____(dá)___(dá)___結(jié)點(diǎn)或________(dá)_結(jié)點(diǎn)。同一個(gè)結(jié)點(diǎn)的兒子結(jié)點(diǎn)之間互稱為_(kāi)____(dá)_____(dá)_結(jié)點(diǎn)。
46、假定一棵樹(shù)的廣義表為A(B(e),C(F(h,i,j),g),D),則該樹(shù)的度為__(dá)___(dá)____(dá)__,樹(shù)的深度為_(kāi)____(dá)____,終端結(jié)點(diǎn)為_(kāi)_____(dá),單分支結(jié)點(diǎn)為,雙分支結(jié)點(diǎn)個(gè)數(shù)為
_____(dá)__,三分支結(jié)點(diǎn)為_(kāi)______,C結(jié)點(diǎn)的雙親結(jié)點(diǎn)是______,孩子結(jié)點(diǎn)是___(dá)___。48、完全二叉樹(shù)、滿二叉樹(shù)、線索二叉樹(shù)和二叉排序樹(shù)這四個(gè)名詞術(shù)語(yǔ)中,與數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)有關(guān)系的是____(dá)___(dá)___(dá)__(dá)_。47、有三個(gè)結(jié)點(diǎn)的二叉樹(shù),最多有____(dá)____種形狀。48、每一趟排序時(shí)從排好序的元素中挑出一個(gè)值最小的元素與這些未排小序的元素的第一個(gè)元素互換位置,這種排序方法成為_____(dá)_____(dá)__(dá)_排序法。49、高度為k的二叉樹(shù)具有的結(jié)點(diǎn)數(shù)目,最少為_(kāi)____,最多為__(dá)___。50、對(duì)任何一棵二叉樹(shù),若n0,n1,n2分別是度為0,1,2的結(jié)點(diǎn)的個(gè)數(shù),則n0=____(dá)___。51、在含100個(gè)結(jié)點(diǎn)的完全二叉樹(shù),葉子結(jié)點(diǎn)的個(gè)數(shù)為_(kāi)___(dá)___。52、將一個(gè)數(shù)據(jù)元素(或記錄)的任意序列,重新排列成一個(gè)按關(guān)鍵字有序的序列叫_____。53、若一棵滿二叉樹(shù)具有121個(gè)結(jié)點(diǎn),則該樹(shù)的深度為__(dá)__(dá)_____。54、一個(gè)具有767個(gè)結(jié)點(diǎn)的完全二叉樹(shù),其葉子結(jié)點(diǎn)個(gè)數(shù)為_(kāi)______(dá)_。55、深度為90的滿二叉樹(shù),第11層有__(dá)______個(gè)結(jié)點(diǎn)。56、有100個(gè)結(jié)點(diǎn)的完全二叉樹(shù),深度為_(kāi)_______(dá)。57、設(shè)一棵二叉樹(shù)中度為2的結(jié)點(diǎn)10個(gè),則該樹(shù)的葉子個(gè)數(shù)為_(kāi)_______(dá)。58、若待散列的序列為(18,25,63,50,42,32,9),散列函數(shù)為H(key)=key
MOD
9,與18發(fā)生沖突的元素有_____(dá)____(dá)____個(gè)。59、具有3個(gè)2度結(jié)點(diǎn)和4個(gè)葉結(jié)點(diǎn)的二叉樹(shù)可含__(dá)_____(dá)___個(gè)1度結(jié)點(diǎn)。60、一棵具有5層滿二叉樹(shù)中節(jié)點(diǎn)總數(shù)為_(kāi)__(dá)___(dá)_____(dá)。61、一棵具有16個(gè)結(jié)點(diǎn)的完全二叉樹(shù),對(duì)他按層編號(hào),對(duì)于編號(hào)為7的結(jié)點(diǎn),他的雙親結(jié)點(diǎn)及左右結(jié)點(diǎn)編號(hào)為_(kāi)____(dá)_、___(dá)___、_______。62、深度為k(設(shè)根的層數(shù)為1)的完全二叉樹(shù)至少有______(dá)_個(gè)結(jié)點(diǎn),
至多有_____(dá)__個(gè)結(jié)點(diǎn)。63、若要對(duì)某二叉排序樹(shù)進(jìn)行遍歷,保證輸出所有結(jié)點(diǎn)的值序列按增序排列,應(yīng)對(duì)該二叉排序樹(shù)采用________遍歷法。64、在序列(2,5,8,11,15,16,22,24,27,35,50)中采用折半查找(二分查找)方法查找元素24,需要進(jìn)行_____(dá)_____(dá)__(dá)__次元素之間的比較。65、設(shè)有10個(gè)值,構(gòu)成哈夫曼樹(shù),則該哈夫曼樹(shù)共有______個(gè)結(jié)點(diǎn)。66、從樹(shù)中一個(gè)結(jié)點(diǎn)到另一個(gè)結(jié)點(diǎn)之間的分支構(gòu)成這兩個(gè)結(jié)點(diǎn)之間的__(dá)___(dá)__(dá)_____。67、關(guān)鍵字自身作為哈希函數(shù),即H(k)=k,也可自身加上一個(gè)常數(shù)作為哈希函數(shù),即H(k)=k+C這種構(gòu)造哈希函數(shù)的方式叫__(dá)___(dá)______(dá)_。68、對(duì)于一個(gè)圖G,若邊集合E(G)為無(wú)向邊的集合,則稱該圖為_(kāi)____(dá)__(dá)_____。69、對(duì)于一個(gè)圖G,若邊集合E(G)為有向邊的集合,則稱該圖為_(kāi)___(dá)________。70、對(duì)于有向圖,頂點(diǎn)的度分為入度和出度,以該頂點(diǎn)為終點(diǎn)的邊數(shù)目叫________;以該頂點(diǎn)為起點(diǎn)的邊數(shù)目叫___(dá)_____(dá)_。71、一個(gè)無(wú)向圖采用鄰接矩陣存儲(chǔ)方法,其鄰接矩陣一定是一個(gè)___(dá)________(dá)___。72、有一個(gè)n個(gè)頂點(diǎn)的有向完全圖的弧數(shù)______(dá)_______。73、在無(wú)向圖中,若從頂點(diǎn)A到頂點(diǎn)B存在_________,則稱A與B之間是連通的。74、在一個(gè)無(wú)向圖中,所有頂點(diǎn)的度數(shù)之和等于所有邊數(shù)的______(dá)_____倍。75、一個(gè)連通圖的生成樹(shù)是該圖的____(dá)______(dá)__連通子圖。若這個(gè)連通圖有n個(gè)頂點(diǎn),
則它的生成樹(shù)有__(dá)___(dá)____(dá)_條邊。76、無(wú)向圖的鄰接矩陣是一個(gè)____(dá)_________矩陣。77、假如從一無(wú)向圖的任意頂點(diǎn)出發(fā)進(jìn)行一次深度優(yōu)先搜索即可訪問(wèn)所有頂點(diǎn),則該圖一定是_____
_____(dá)__。78、若采用鄰接表的存儲(chǔ)結(jié)構(gòu),則圖的廣度優(yōu)先搜索類似于二叉樹(shù)的__(dá)_____(dá)__(dá)___(dá)遍歷。79、若圖的鄰接矩陣是對(duì)稱矩陣,則該圖一定是___(dá)_______(dá)__(dá)____。80、從如圖所示的臨接矩陣可以看出,該圖共有__(dá)____個(gè)頂點(diǎn)。假如是有向圖,該圖共有_____(dá)_條弧;假如是無(wú)向圖,則共有___(dá)_____條邊。81、假如從一個(gè)頂點(diǎn)出發(fā)又回到該頂點(diǎn),則此途徑叫做______(dá)___(dá)__。82、一個(gè)具有個(gè)n頂點(diǎn)的無(wú)向圖中,要連通所有頂點(diǎn)至少需要____(dá)__(dá)__條邊。83、給定序列{100,
86,
48,
73,
35,
39,
42,
57,
66,
21},
按堆結(jié)構(gòu)的定義,
則它一定_______(dá)__堆。84、從未排序序列中選擇一個(gè)元素,該元素將當(dāng)前參與排序的那些元素提成前后兩個(gè)部分,前一部分中所有元素都小于等于所選元素,后一部分中所有元素都大于或等于所選元素,而此時(shí)所選元素處在排序的最終位置。這種排序法稱為_(kāi)__(dá)___(dá)__(dá)___(dá)__排序法。85、折半搜索只適合用于__(dá)___(dá)________(dá)______。86、結(jié)點(diǎn)關(guān)鍵字轉(zhuǎn)換為該結(jié)點(diǎn)存儲(chǔ)單元地址的函數(shù)H稱為___(dá)_____(dá)__(dá)___或叫______(dá)____。87、在索引查找中,一方面查找___(dá)____(dá)_,然后查找相應(yīng)的______(dá)___,整個(gè)索引查找的平均查找長(zhǎng)度等于查找索引表的平均長(zhǎng)度與查找相應(yīng)子表的平均查找長(zhǎng)度的___(dá)___(dá)_。三、選擇題:(
)1.數(shù)據(jù)結(jié)構(gòu)通常是研究數(shù)據(jù)的
及它們之間的聯(lián)系。A存儲(chǔ)和邏輯結(jié)構(gòu)
B存儲(chǔ)和抽象
C抱負(fù)和抽象
D抱負(fù)與邏輯(
)2.在堆棧中存取數(shù)據(jù)的原則是
。A先進(jìn)先出
B后進(jìn)先出
C先進(jìn)后出
D隨意進(jìn)出(
)3.將一棵有100個(gè)結(jié)點(diǎn)的完全二叉樹(shù)從上到下,從左到右依次對(duì)結(jié)點(diǎn)進(jìn)行編號(hào),根結(jié)點(diǎn)的編號(hào)為1,則編號(hào)為49的結(jié)點(diǎn)的左孩子的編號(hào)為_(kāi)___(dá)__。A.98
B.99
C.50
D.48(
)4.對(duì)于如圖所示二叉樹(shù)采用中根遍歷,對(duì)的的遍歷序列應(yīng)為(
)A.ABCDEF
B.ABECDFC.CDFBEA
D.CBDAEF(
)5.設(shè)有100個(gè)元素,用折半查找法進(jìn)行查找時(shí),最大比較次數(shù)是___(dá)__
。A.25
B.50
C.10
D.7(
)6.快速排序在___(dá)__情況下最易發(fā)揮其長(zhǎng)處。A.被排序數(shù)據(jù)中具有多個(gè)相同排序碼
B.被排序數(shù)據(jù)已基本有序C.被排序數(shù)據(jù)完全無(wú)序
D.被排序數(shù)據(jù)中最大值和最小值相差懸殊(
)7.由兩個(gè)棧共享一個(gè)向量空間的好處是____(dá)__。
A減少存取時(shí)間,減少下溢發(fā)生的機(jī)率
B節(jié)省存儲(chǔ)空間,減少上溢發(fā)生的機(jī)率C減少存取時(shí)間,減少上溢發(fā)生的機(jī)率
D節(jié)省存儲(chǔ)空間,減少下溢發(fā)生的機(jī)率(
)8.某二叉樹(shù)的前序和后序序列正好相反,則該二叉樹(shù)一定是_____的二叉樹(shù)A空或者只有一個(gè)結(jié)點(diǎn)
B高度等于其結(jié)點(diǎn)數(shù)C任一結(jié)點(diǎn)無(wú)左孩子
D任一結(jié)點(diǎn)無(wú)右孩子(
)9.設(shè)散列表長(zhǎng)m=14,散列函數(shù)H(K)=K%11,已知表中已有4個(gè)結(jié)點(diǎn):r(15)=4;
r(38)=5;
r(61)=6;r(84)=7,其他地址為空,如用二次探測(cè)再散列解決沖突,關(guān)鍵字為49的結(jié)點(diǎn)地址是___(dá)__(dá)___。A8
B3
C5
D9(
)10.在具有n個(gè)項(xiàng)點(diǎn)有e條邊的無(wú)向圖的鄰接矩陣中,零元素的個(gè)數(shù)為_(kāi)_______。A.e
B.2e
C.n2-e
D.n2-2e(
)11.圖的深度優(yōu)先遍歷類似于二叉樹(shù)的_____(dá)__。A.先序遍歷
B.中序遍歷
C.后序遍歷
D.層次遍歷(
)12.設(shè)長(zhǎng)度為n的鏈隊(duì)列用單循環(huán)鏈表表達(dá),若只設(shè)頭指針,則入隊(duì)操作的時(shí)間復(fù)雜度為_(kāi)___(dá)___(dá)。A.
O(1)
B.
O(log2n)
C.
O(n)
D.
O(n2)(
)13.堆的形狀是一棵_____(dá)__。A.二叉排序樹(shù)
B.滿二叉樹(shù)
C.完全二叉樹(shù)
D.平衡二叉樹(shù)(
)14.一個(gè)無(wú)向連連通圖的生成樹(shù)是具有該連通圖的所有項(xiàng)點(diǎn)的_____(dá)__。A.極小連通子圖
B.極小子圖
C.極大連通子圖
D.極大子圖(
)15.一個(gè)序列中有10000個(gè)元素,若只想得到其中前10個(gè)最小元素,最佳采用_____(dá)__方法A.快速排序
B.堆排序
C.插入排序
D.二路歸并排序(
)16.設(shè)單鏈表中結(jié)點(diǎn)的結(jié)構(gòu)為typedef
struct
node
{
file://鏈表結(jié)點(diǎn)定義ElemType
data;
file://數(shù)據(jù)struct
node
*
Link;
file://結(jié)點(diǎn)后繼指針}
ListNode;已知指針p所指結(jié)點(diǎn)不是尾結(jié)點(diǎn),若在*p之后插入結(jié)點(diǎn)*s,則應(yīng)執(zhí)行下列哪一個(gè)操作__(dá)____。A.
s->link
=
p;
p->link
=
s;B.
s->link
=
p->link;
p->link
=
s;C.
s->link
=
p->link;
p
=
s;
D.
p->link
=
s;
s->link
=
p;(
)17.設(shè)單鏈表中結(jié)點(diǎn)的結(jié)構(gòu)為typedef
struct
node
{
file://鏈表結(jié)點(diǎn)定義ElemType
data;
file://數(shù)據(jù)struct
node
*
Link;
file://結(jié)點(diǎn)后繼指針}
ListNode;非空的循環(huán)單鏈表first的尾結(jié)點(diǎn)(由p所指向)滿足:____(dá)__A.
p->link
==
NULL;
B.
p
==
NULL;C.
p->link
==
first;D.
p
==
first;(
)18.計(jì)算機(jī)辨認(rèn)、存儲(chǔ)和加工解決的對(duì)象被統(tǒng)稱為_(kāi)______(dá)__A.?dāng)?shù)據(jù)
B.數(shù)據(jù)元素
C.?dāng)?shù)據(jù)結(jié)構(gòu)
D.?dāng)?shù)據(jù)類型(
)19.在具有n個(gè)結(jié)點(diǎn)的有序單鏈表中插入一個(gè)新結(jié)點(diǎn)并使鏈表仍然有序的時(shí)間復(fù)雜度是__(dá)____(dá)__A.O(1)
B.O(n)
C.O(nlogn)D.O(n2)(
)20.隊(duì)和棧的重要區(qū)別是___(dá)__(dá)__(dá)_A.邏輯結(jié)構(gòu)不同
B.存儲(chǔ)結(jié)構(gòu)不同C.所包含的運(yùn)算個(gè)數(shù)不同
D.限定插入和刪除的位置不同(
)21.鏈棧與順序棧相比,比較明顯的優(yōu)點(diǎn)是____(dá)____(dá)A.插入操作更加方便
B.刪除操作更加方便C.不會(huì)出現(xiàn)下溢的情況
D.不會(huì)出現(xiàn)上溢的情況(
)22.在目的串T[0…n-1]=”xwxxyxy”中,對(duì)模式串p[0…m-1]=”xy”進(jìn)行子串定位操作的結(jié)果___(dá)____A.0
B.2C.3
D.5(
)23.已知廣義表的表頭為A,表尾為(B,C),則此廣義表為_(kāi)_______(dá)A.(A,(B,C))
B.(A,B,C)C.(A,B,C)
D.((
A,B,C))(
)24.二維數(shù)組A按行順序存儲(chǔ),其中每個(gè)元素占1個(gè)存儲(chǔ)單元。若A[1][1]的存儲(chǔ)地址為420,A[3][3]的存儲(chǔ)地址為446,則A[5][5]的存儲(chǔ)地址為_(kāi)__(dá)___(dá)_A.470
B.471C.472
D.473(
)25.二叉樹(shù)中第5層上的結(jié)點(diǎn)個(gè)數(shù)最多為_(kāi)___(dá)__(dá)__A.8
B.15C.16
D.32(
)26.假如某圖的鄰接矩陣是對(duì)角線元素均為零的上三角矩陣,則此圖是__(dá)___(dá)__A.有向完全圖
B.連通圖C.強(qiáng)連通圖D.有向無(wú)環(huán)圖(
)27.對(duì)n個(gè)關(guān)鍵字的序列進(jìn)行快速排序,平均情況下的空間復(fù)雜度為_(kāi)__(dá)____A.O(1)
B.O(logn)C.O(n)
D.O(nlogn)(
)28.對(duì)于哈希函數(shù)H(key)=key%13,被稱為同義詞的關(guān)鍵字是_____(dá)__A.35和41
B.23和39C.15和44
D.25和51(
)29.
由權(quán)值分別為3,8,6,2,5的葉子結(jié)點(diǎn)生成一棵哈夫曼樹(shù),它的帶權(quán)途徑長(zhǎng)度為_(kāi)_______。A、
24
B、
48
C、
72
D、
53(
)30.對(duì)包含N個(gè)元素的散列表進(jìn)行檢索,平均檢索長(zhǎng)度
_____(dá)__(dá)_A、為
o(log2N)
B、為o(N)
C、不直接依賴于N
D、上述三者都不是(
)31.
向堆中插入一個(gè)元素的時(shí)間復(fù)雜度為_(kāi)__(dá)_____。A、
O(log2n)
B、
O(n)
C、
O(1)
D、
O(nlog2n)(
)32.下面關(guān)于圖的存儲(chǔ)的敘述中,哪一個(gè)是對(duì)的的。
________A.用相鄰矩陣法存儲(chǔ)圖,占用的存儲(chǔ)空間數(shù)只與圖中結(jié)點(diǎn)個(gè)數(shù)有關(guān),而與邊數(shù)無(wú)關(guān)
B.用相鄰矩陣法存儲(chǔ)圖,占用的存儲(chǔ)空間數(shù)只與圖中邊數(shù)有關(guān),而與結(jié)點(diǎn)個(gè)數(shù)無(wú)關(guān)C.用鄰接表法存儲(chǔ)圖,占用的存儲(chǔ)空間數(shù)只與圖中結(jié)點(diǎn)個(gè)數(shù)有關(guān),而與邊數(shù)無(wú)關(guān)D.用鄰接表法存儲(chǔ)圖,占用的存儲(chǔ)空間數(shù)只與圖中邊數(shù)有關(guān),而與結(jié)點(diǎn)個(gè)數(shù)無(wú)關(guān)(
)33.輸入序列為(A,B,C,D),不也許得到的輸出序列是__(dá)___(dá)_.A.
(A,B,C,D)
B.(D,C,B,A)C.(A,
C,D,B)
D.(C,A,B,D)(
)34.在長(zhǎng)度為n的順序存儲(chǔ)的線性表中,刪除第i個(gè)元素(1≤i≤n)時(shí),需要從前向后依次前移____(dá)個(gè)元素。A、n-i
B、n-i+1
C、n-i-1
D、i(
)35.設(shè)一個(gè)廣義表中結(jié)點(diǎn)的個(gè)數(shù)為n,則求廣義表深度算法的時(shí)間復(fù)雜度為_(kāi)__(dá)_。A、O(1)
B、O(n)
C、O(n2)
D、O(log
2
n)(
)36.假定一個(gè)順序隊(duì)列的隊(duì)首和隊(duì)尾指針?lè)謩e為f和r,則判斷隊(duì)空的條件為
____。A、f+1==r
B、r+1==f
C、f==0
D、f==r(
)37.從堆中刪除一個(gè)元素的時(shí)間復(fù)雜認(rèn)為_(kāi)__(dá)_。A、O(1)
B、O(log
2
n)
C、O(n)
D、O(nlog
2
n)(
)38.若需要運(yùn)用形參直接訪問(wèn)實(shí)參,則應(yīng)把形參變量說(shuō)明為__(dá)__參數(shù)。A.指針
B.引用
C.值
D.變量(
)39.在一個(gè)單鏈表HL中,若要在指針q所指結(jié)點(diǎn)的后面插入一個(gè)由指針p所指向的結(jié)點(diǎn),則執(zhí)行____。A.
q一>next=p一>next;p一>next=q;C.
q一>next=p一>next;p一>next=q;B.
p一>next=q一>next;q=p;
D.
p一>next=q一>next;q一>next=p;(
)40.在一個(gè)順序隊(duì)列中,隊(duì)首指針指向隊(duì)首元素的____(dá)位置。A.前一個(gè)
B.后一個(gè)
C.當(dāng)前
D.最后一個(gè)(
)41.向二叉搜索樹(shù)中插入一個(gè)元素時(shí),其時(shí)間復(fù)雜度大體力____。A
O(1)
B
O(1og2n)C
O(n)
D
O(nlog2n)(
)42.算法指的是___(dá)__(dá)___A.計(jì)算機(jī)程序
B.解決問(wèn)題的計(jì)算方法C.排序算法D.解決問(wèn)題的有限運(yùn)算序列(
)43.線性表采用鏈?zhǔn)酱鎯?chǔ)時(shí),結(jié)點(diǎn)的存儲(chǔ)地址___(dá)___(dá)__A.必須是不連續(xù)的
B.連續(xù)與否均可C.必須是連續(xù)的D.和頭結(jié)點(diǎn)的存儲(chǔ)地址相連續(xù)(
)44.將長(zhǎng)充為n的單鏈表鏈接在長(zhǎng)度為m的單鏈表之后的算法的時(shí)間復(fù)雜度為__(dá)______A.O(1)
B.O(n)C.O(m)
D.O(m+n)(
)45.由兩個(gè)棧共享一個(gè)向量空間的好處是:__(dá)______(dá)A.減少存取時(shí)間,減少下溢發(fā)生的機(jī)率
B.節(jié)省存儲(chǔ)空間,減少上溢發(fā)生的機(jī)率C.減少存取時(shí)間,減少上溢發(fā)生的機(jī)率
D.節(jié)省存儲(chǔ)空間,減少下溢發(fā)生的機(jī)率(
)46.設(shè)數(shù)組DAtA[m]作為循環(huán)隊(duì)列SQ的存儲(chǔ)空間,front為隊(duì)頭指針,reAr為隊(duì)尾指針,則執(zhí)行出隊(duì)操作后其頭指針front值為_(kāi)__(dá)____(dá)_A.
front=front+1
B.
front=(front+1)%(m-1)C.
front=(front-1)%m
D.
front=(front+1)%m(
)47.如下陳述中對(duì)的的是____(dá)____A.
串是一種特殊的線性表
B.
串的長(zhǎng)度必須大于零C.
串中元素只能是字母
D.
空串就是空白串(
)48.若目的串的長(zhǎng)充為n,模式串的長(zhǎng)度為[n/3],則執(zhí)行模式匹配算法時(shí),在最壞情況下的時(shí)間復(fù)雜度是__(dá)______A.O(1)
B.O(n)C.O(n2)
D.O(n3)(
)49.一個(gè)非空廣義表的表頭________A.不也許是子表B.只能是子表C.只能是原子
D.可以是子表或原子(
)50.
從堆中刪除一個(gè)元素的時(shí)間復(fù)雜度為__(dá)___(dá)___(dá)。A、
O(1)
B、
O(n)
C、
O(log2n)
D、
O(nlog2n)(
)51.一棵度為3的樹(shù)中,度為3的結(jié)點(diǎn)個(gè)數(shù)為2,度為2的結(jié)點(diǎn)個(gè)數(shù)為1,則度為0的結(jié)點(diǎn)個(gè)數(shù)為_(kāi)____(dá)___A.4
B.5C.6
D.7(
)52.
從二叉搜索樹(shù)中查找一個(gè)元素時(shí),其時(shí)間復(fù)雜度大體為_(kāi)_____(dá)__(dá)。A、
O(n)
B、
O(1)
C、
O(log2n)
D、
O(n2)(
)53.
根據(jù)n個(gè)元素建立一棵二叉搜索樹(shù)時(shí),其時(shí)間復(fù)雜度大體為_(kāi)___(dá)____。A、
O(n)
B、
O(log2n
)
C、
O(n2)
D、
O(nlog2n)(
)54.用某種排序方法對(duì)關(guān)鍵字序列(25,84,21,47,15,27,68,35,20)進(jìn)行排序時(shí),序列的變化情況是如下____(dá)____:
20,15,21,25,47,27,68,35,84
15,20,21,25,35,27,47,68,84
15,20,21,25,27,35,47,68,84則所采用的排序方法是________A.選擇排序
B.希爾排序C.歸并排序
D.快速排序(
)55.適于對(duì)動(dòng)態(tài)查找表進(jìn)行高效率查找的組織結(jié)構(gòu)是________(dá)A.有序表
B.分塊有序表C.二叉排序樹(shù)
D.線性鏈表(
)56.
若需要運(yùn)用形參直接訪問(wèn)實(shí)參,則應(yīng)把形參變量說(shuō)明為__(dá)_____(dá)_參數(shù)。
A
指針
B
引用
C
值
D
常量
(
)57.鏈?zhǔn)綏Ec順序棧相比,一個(gè)比較明顯的優(yōu)點(diǎn)是______(dá)__。
A.
插入操作更加方便
B.
通常不會(huì)出現(xiàn)棧滿的情況
C.
不會(huì)出現(xiàn)??盏那闆r
D.
刪除操作更加方便
(
)58.設(shè)單鏈表中結(jié)點(diǎn)的結(jié)構(gòu)為(data,
link)。已知指針q所指結(jié)點(diǎn)是指針p所指結(jié)點(diǎn)的直接前驅(qū),若在*q與*p之間插入結(jié)點(diǎn)*s,則應(yīng)執(zhí)行下列哪一個(gè)操作________
A.
s->link
=
p->link;
p->link
=
s;
B.
p->link
=
s;
s->link
=
q;C.
p->link
=
s->link;
s->link
=
p;
D.
q->link
=
s;
s->link
=
p;(
)59.若讓元素1,2,3依次進(jìn)棧,則出棧順序不也許出現(xiàn)___(dá)___(dá)__種情況。
A.
3,
2,
1
B.
2,
1,
3
C.
3,
1,
2
D.
1,
3,
2
(
)60.線性鏈表不具有的特點(diǎn)是________。
A.
隨機(jī)訪問(wèn)
B.
不必事先估計(jì)所需存儲(chǔ)空間大小
C.
插入與刪除時(shí)不必移動(dòng)元素
D.
所需空間與線性表長(zhǎng)度成正比
(
)61.在稀疏矩陣的十字鏈接存儲(chǔ)中,每個(gè)列單鏈表中的結(jié)點(diǎn)都具有相同的__(dá)___。
A.行號(hào)
B.列號(hào)
C.元素值
D.地址
(
)62.假定一個(gè)順序隊(duì)列的隊(duì)首和隊(duì)尾指針?lè)謩e為front和rear,存放該隊(duì)列的數(shù)組長(zhǎng)度為N,則判斷隊(duì)空的條件為_(kāi)___(dá)____(dá)。
A.(front+1)%
N
==
rear
C.
front
==
0B.(rear+1)%
N
==
front
D.
front
==
rear(
)63.棧的插入和刪除操作在__(dá)_進(jìn)行.
(A).棧頂
(B).棧底(C).任意位置
(D).指定位置
(
)64.
在一個(gè)順序循環(huán)隊(duì)列中,隊(duì)首指針指向隊(duì)首元素的__(dá)___(dá)__(dá)_位置。
A.
后兩個(gè)
B.
后一個(gè)C.
當(dāng)前
D.前一個(gè)
(
)65.下面算法的時(shí)間復(fù)雜度為__。
int
f(int
n){
if
(n==0)return
1;
else
return
n*f(n-1);}
A.O(1)
B.O(n)
C.O(n2)
D.O(n!)(
)66.數(shù)據(jù)結(jié)構(gòu)是一門(mén)研究非數(shù)值計(jì)算的程序設(shè)計(jì)問(wèn)題中計(jì)算機(jī)的(①)以及它們之間的(②)和運(yùn)算的學(xué)科?①A、操作對(duì)象B、計(jì)算方法C、邏輯存儲(chǔ)D、數(shù)據(jù)映象②A、結(jié)構(gòu)B、關(guān)系C、運(yùn)算D、算法(
)67.數(shù)據(jù)結(jié)構(gòu)被形式地定義為(K,R),其中K是(①)的有限集合,R是K上(②)的有限集合①A、算法B、數(shù)據(jù)元素C、數(shù)據(jù)操作D、邏輯結(jié)韻②A、操作B、映象C、存儲(chǔ)D、關(guān)系(
)68.在數(shù)據(jù)結(jié)構(gòu)中,從邏輯上可以把數(shù)據(jù)結(jié)構(gòu)分為_(kāi)__(dá)_____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)(
)69.線性表的順序存儲(chǔ)結(jié)構(gòu)是一種___(dá)__(dá)____(dá)的存儲(chǔ)結(jié)構(gòu),線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)是一種________(dá)的存儲(chǔ)結(jié)構(gòu)A、隨機(jī)存取
B、順序存取C、索引存取
D、HASH存?。?/p>
)70.算法分析的目的是(①),算法分析的兩個(gè)重要方面是(②)①A、找出數(shù)據(jù)結(jié)構(gòu)的合理性
C、分析算法的效率以求改善B、研究算法中的輸入和輸出的關(guān)系D、分析算法的易懂性和文檔性②A、空間復(fù)雜性和時(shí)間復(fù)雜性
C、可讀性和文檔性B、對(duì)的性和簡(jiǎn)明性
D、數(shù)據(jù)復(fù)雜性和程序復(fù)雜性(
)71.計(jì)算機(jī)算法指的是(①),它必具有輸入、輸出和(②)等五個(gè)特性①A、計(jì)算方法B、排序方法C、解決萊一問(wèn)題的有限運(yùn)算序列D、調(diào)度方法②A、可執(zhí)行性、可移植性和可擴(kuò)充性
C、擬定性、有窮性和穩(wěn)定性B、可執(zhí)行性、擬定性和有窮性
D、易謾性、穩(wěn)定性和安全性(
)72.線性表若采用鏈表存儲(chǔ)結(jié)構(gòu)時(shí),規(guī)定內(nèi)存中可用存儲(chǔ)單元的地址__(dá)___(dá)___A、必須是連續(xù)的B、部分地址必須是連續(xù)的C、一定是不連續(xù)的D、連續(xù)不連續(xù)都可以(
)73.在以下的敘述中,對(duì)的的是______(dá)___(dá)_A、線性表的線性存儲(chǔ)結(jié)構(gòu)優(yōu)于鏈表存儲(chǔ)結(jié)構(gòu)
C、棧的操作方式是先進(jìn)先出B、二維數(shù)組是它的每個(gè)數(shù)據(jù)元素為一個(gè)線性表的線性表D、隊(duì)列的操作方式是先進(jìn)后出(
)74.
一個(gè)數(shù)組元素A[i]與______(dá)__(dá)的表達(dá)等價(jià)。A、
*(A+i)
B、
A+i
C、
*A+i
D、
&A+i
(
)75.
對(duì)于兩個(gè)函數(shù),若函數(shù)名相同,但只是_________(dá)___不同則不是重載函數(shù)。A、
參數(shù)類型
B、
參數(shù)個(gè)數(shù)
C、
函數(shù)類型
D、函數(shù)變量(
)76.
若需要運(yùn)用形參直接訪問(wèn)實(shí)參,則應(yīng)把形參變量說(shuō)明為__(dá)______參數(shù)A、
指針
B、
引用
C、
值D、函數(shù)(
)77.下面程序段的時(shí)間復(fù)雜度為__(dá)______(dá)___(dá)_。
for(int
i=0;
i<m;
i++)
for(int
j=0;
j<n;
j++)
A[i][j]=i*j;A、
O(m2)
B、
O(n2)
C、
O(m*n)
D、
O(m+n)(
)78.
執(zhí)行下面程序段時(shí),執(zhí)行S語(yǔ)句的次數(shù)為_(kāi)______(dá)____(dá)_。
for(int
i=1;
i<=n;
i++)
for(int
j=1;
j<=i;
j++)
S;A、
n2
B、
n2/2
C、
n(n+1)
D、
n(n+1)/2(
)79.
下面算法的時(shí)間復(fù)雜度為_(kāi)___(dá)_____(dá)__(dá)_。
int
f(
unsigned
int
n
)
{
if
(
n==0
||
n==1
)
return
1;
else
return
n*f(n-1);
}A、
O(1)
B、
O(n)
C、
O(n2)
D、
O(n!)(
)80.在一個(gè)長(zhǎng)度為n的順序存儲(chǔ)線性表中,向第i個(gè)元素(1≤i≤n+1)之前插入一個(gè)新元素時(shí),需要從后向前依次后移
個(gè)元素。A、n-i
B、n-i+1
C、n-i-1
D、i(
)81.在一個(gè)長(zhǎng)度為n的順序存儲(chǔ)線性表中,刪除第i個(gè)元素(1≤i≤n+1)時(shí),需要從前向后依次前移_____個(gè)元素。A、n-i
B、n-i+1
C、n-i-1
D、i(
)82.在一個(gè)長(zhǎng)度為n的線性表中順序查找值為x的元素時(shí),查找時(shí)的平均查找長(zhǎng)度(即x同元素的平均比較次數(shù),假定查找每個(gè)元素的概率都相等)為_(kāi)____。A、n
B、n/2
C、(n+1)/2
D、(n-1)/2(
)83.在一個(gè)單鏈表HL中,若要向表頭插入一個(gè)由指針p指向的結(jié)點(diǎn),則執(zhí)行__(dá)___
。A、HL
=
p;
p->next
=
HL;
C、p->next
=
HL;
p
=
HL;B、p->next
=
HL;
HL
=
p;
D、p->next
=
HL->next;
HL->next
=
p;(
)84.在一個(gè)單鏈表HL中,若要在指針q所指的結(jié)點(diǎn)的后面插入一個(gè)由指針p所指的結(jié)點(diǎn),則執(zhí)行___(dá)__(dá)。A、q->next
=
p->next
;
p->next
=
q;
C、q->next
=
p->next;
p->next
=
q;B、p->next
=
q->next;
q
=
p;
D、p->next
=
q->next
;
q->next
=
p;(
)85.在一個(gè)單鏈表HL中,若要?jiǎng)h除由指針q所指向結(jié)點(diǎn)的后繼結(jié)點(diǎn),則執(zhí)行_____。A、p
=
q->next
;
p->next
=
q->next;
C、p
=
q->next
;
q->next
=
p->next;B、p
=
q->next
;
q->next
=
p;
D、q->next
=
q->next->next;
q->next
=
q;(
)86.
在稀疏矩陣的帶行指針向量的鏈接存儲(chǔ)中,每個(gè)行單鏈表中的結(jié)點(diǎn)都具有相同的_______(dá)_。A、
行號(hào)
B、
列號(hào)
C、
元素值
D、
地址(
)87.
設(shè)一個(gè)廣義表中結(jié)點(diǎn)的個(gè)數(shù)為n,則求廣義表深度算法的時(shí)間復(fù)雜度為_(kāi)___(dá)___。A、
O(1)
B、
O(n)
C、
O(n2)
D、
O(log2n)(
)88.棧的插入與刪除操作在____(dá)_進(jìn)行。A、棧頂
B、棧底
C、任意位置
D、指定位置(
)89.當(dāng)運(yùn)用大小為N的一維數(shù)組順序存儲(chǔ)一個(gè)棧時(shí),假定用top==N表達(dá)??眨瑒t向這個(gè)棧插入一個(gè)元素時(shí),一方面應(yīng)執(zhí)行___(dá)__語(yǔ)句修改top指針。A、top++
B、top--
C、top=0
D、top(
)90.若讓元素1,2,3依次進(jìn)棧,則出棧順序不也許出現(xiàn)_____(dá)種情況。A、3,2,1
B、2,1,3
C、3,1,2
D、1,3,2(
)91.在一個(gè)循環(huán)順序隊(duì)列中,隊(duì)首指針指向隊(duì)首元素的_____位置。A、前一個(gè)
B、后一個(gè)
C、當(dāng)前
D、后面(
)92.當(dāng)運(yùn)用大小為N的一維數(shù)組順序存儲(chǔ)一個(gè)循環(huán)隊(duì)列時(shí),該隊(duì)列的最大長(zhǎng)度為__(dá)__(dá)_。A、N-2
B、N-1
C、N
D、N+1(
)93.從一個(gè)循環(huán)順序隊(duì)列刪除元素時(shí),一方面需要___(dá)__。A、前移一位隊(duì)首指針
B、后移一位隊(duì)首指針C、取出隊(duì)首指針?biāo)肝恢蒙系脑?/p>
D、取出隊(duì)尾指針?biāo)肝恢蒙系脑兀?/p>
)94.假定一個(gè)循環(huán)順序隊(duì)列的隊(duì)首和隊(duì)尾指針?lè)謩e為f和r,則判斷隊(duì)空的條件是_____。A、f+1==r
B、r+1==f
C、f==0
D、f==r(
)95.假定一個(gè)鏈隊(duì)的隊(duì)首和隊(duì)尾指針?lè)謩e為front和rear,則判斷隊(duì)空的條件是__(dá)___。A、front==rear
B、front!=NULL
C、rear!=NULL
D、front==NULL四、應(yīng)用題:1、棧和隊(duì)列都是特殊線性表,其特殊性是什么?2、設(shè)有一順序隊(duì)列sq,容量為5,初始狀態(tài)sq.front=sq.rear=0,劃出作完下列操作的隊(duì)列及其頭尾指針變化狀態(tài),若不能入隊(duì),簡(jiǎn)述理由后停止。1)d,e,b
入隊(duì)。2)d,e
出隊(duì)。3)
i,j
入隊(duì)。4)b
出隊(duì)。
5)n,o,p
入隊(duì)。3、設(shè)有一個(gè)順序棧S,元素s1,
s2,
s3,
s4,
s5,
s6依次進(jìn)棧,假如6個(gè)元素的出棧順序?yàn)閟2,
s3,
s4,
s6,
s5,
s1,則順序棧的容量至少應(yīng)為多少?4、將兩個(gè)棧存入數(shù)組V[1..m]中應(yīng)如何安排最佳?這時(shí)??铡M的條件是什么?5、已知稀疏矩陣如下:請(qǐng)寫(xiě)出該稀疏矩陣三元組表達(dá)。6、廣義表A=(a,b,(c,d),(e,(f,g))),求其長(zhǎng)度,及深度。7、請(qǐng)畫(huà)出下面廣義表相應(yīng)的加入表頭結(jié)點(diǎn)的單鏈表表達(dá),D(A(x,y,L(a,b)),B(z,A(x,y,L(a,b))))。8、一棵具有n個(gè)結(jié)點(diǎn)的抱負(fù)平衡二叉樹(shù)(即除離根最遠(yuǎn)的最底層外其他各層都是滿的,最底層有若干結(jié)點(diǎn))有多少層?若設(shè)根結(jié)點(diǎn)在第0層,則樹(shù)的高度h如何用n來(lái)表達(dá)(注意n也許為0)?9、設(shè)二叉樹(shù)后根遍歷為BAC,畫(huà)出所有也許的二叉樹(shù)。10、假設(shè)一棵二叉樹(shù)的層序序列是ABCDEFGHIJ和中序序列是DBGEHJACIF,請(qǐng)畫(huà)出該樹(shù)。11、有一個(gè)完全二叉樹(shù)按層次順序存放在一維數(shù)組中,如下所示:
請(qǐng)指出結(jié)點(diǎn)P的父結(jié)點(diǎn),左子女,右子女。12、給出下列二叉樹(shù)的先序序列。13、已知某非空二叉樹(shù)采用順序存儲(chǔ)結(jié)構(gòu),樹(shù)中結(jié)點(diǎn)的數(shù)據(jù)信息依次存放在一個(gè)一維數(shù)組中,即ABC□DFE□□G□□H□□,該二叉樹(shù)的中序遍歷序列為:14、設(shè)一棵二叉樹(shù)的前序序列為1,2,3,4,5,6,7,8,9,其中序序列為2,3,1,5,4,7,8,6,9,試畫(huà)出該二叉樹(shù)。15、已知一組元素為(46,25,78,62,12,37,70,29),試畫(huà)出按元素排列順序插入生成的一棵二叉樹(shù)。16、由于元素插入的順序不同,所構(gòu)成的二叉排序樹(shù)也有不同的狀態(tài),請(qǐng)畫(huà)出一棵具有1,2,3,4,5,6六個(gè)結(jié)點(diǎn)且以1為根,深度為4的二叉排序樹(shù)。17、什么是線索二叉樹(shù)?為什么要線索化?
18、有n個(gè)頂點(diǎn)的有向連通圖最多有多少條邊?最少有多少條邊?19、下圖中給出由7個(gè)頂點(diǎn)組成的無(wú)向圖。從頂點(diǎn)1出發(fā),對(duì)它進(jìn)行深度優(yōu)先遍歷得到的頂點(diǎn)序列是:進(jìn)行廣度優(yōu)先遍歷得到的頂點(diǎn)序列是:20、什么是連通圖的生成樹(shù)?21、什么是哈夫曼(Huffman)樹(shù)?22、已知結(jié)點(diǎn)a,b,c,d及其權(quán)值寫(xiě)出哈夫曼樹(shù)的構(gòu)造過(guò)程。
a
b
c
d
7
5
2
423、已知圖G={V
,
E}
V={
a,
b,
c,
d,
e
}
E={(a,
b),(b,
d),(c,
d),(d,
e),(e,
a),(a,
c)}畫(huà)出圖G,畫(huà)出圖G的鄰接表。24、考慮下圖:1)從頂點(diǎn)A出發(fā),求它的深度優(yōu)先生成樹(shù)。2)從頂點(diǎn)E出發(fā),求它的廣度優(yōu)先生成樹(shù)。3)根據(jù)普里姆(Prim)算法,求它的最小生成樹(shù)。
25、設(shè)有關(guān)鍵碼序列(Q,H,C,Y,Q,A,M,S,R,D,F(xiàn),X),要按照關(guān)鍵碼值遞增的順序進(jìn)行排序。若采用初始步長(zhǎng)為4的Shell排序法,則一趟掃描的結(jié)果是:若采用以第一個(gè)元素為分界元素的快速排序法,則一趟掃描的結(jié)果是:26、一個(gè)對(duì)象序列的排序碼為{46,79,56,38,40,84},采用快速排序以位于最左位置的對(duì)象為基準(zhǔn)而得到的第一次劃分結(jié)果為:27、用二分法對(duì)一個(gè)長(zhǎng)度為10的有序表進(jìn)行查找,填寫(xiě)查找每個(gè)元素需要的比較次數(shù)。
下標(biāo):
0
1
2
3
4
5
6
7
8
9
比較次數(shù):28、若對(duì)序列(49,38,27,13,97,76,50,65)采用泡排序法(按照值的大小從小到大)進(jìn)行排序,請(qǐng)分別在下表中寫(xiě)出每一趟排序的結(jié)果。原始序列
49
38
27
13
97
76
50
65第1趟的結(jié)果第2趟的結(jié)果第3趟的結(jié)果第4趟的結(jié)果29、給出一組關(guān)鍵字:29,18,25,47,58,12,51,10,分別寫(xiě)出按下列各種排序方法進(jìn)行排序時(shí)的變化過(guò)程:1)歸并排序
每歸并一次書(shū)寫(xiě)一個(gè)順序。2)快速排序
每劃分一次書(shū)寫(xiě)一個(gè)順序。3)堆排序
先建成一個(gè)堆,然后每從堆頂取下一個(gè)元素后,將堆調(diào)整一次。30、給出一組關(guān)鍵字T=(12,2,16,30,8,28,4,10,20,6,18)。寫(xiě)出用下列算法從小到大排序時(shí)第一趟結(jié)束時(shí)的序列:1)希爾排序(第一趟排序的增量為5)2)快速排序(選第一個(gè)記錄為樞軸(分隔))3)鏈?zhǔn)交鶖?shù)排序(基數(shù)為10)31、若雜湊表的地址范圍為[0:9],雜湊函數(shù)為H(key)=(key2+2)MOD
9,并且采用鏈地址方法解決沖突,請(qǐng)畫(huà)出元素7,4,5,3,6,2,8,9,1依次插入該雜湊表以后,該雜湊表的狀態(tài)。32、已知二叉樹(shù)采用二叉鏈表存儲(chǔ)結(jié)構(gòu),鏈結(jié)點(diǎn)的構(gòu)造為lchild
|
data
|
rchild
,根結(jié)點(diǎn)的指針為T(mén)。下面是運(yùn)用中序遍歷的方法記錄二叉樹(shù)中度為1的結(jié)點(diǎn)的個(gè)數(shù)的算法,算法中設(shè)立了一順序存儲(chǔ)結(jié)構(gòu)的堆棧STACK
[1:M],棧頂指針為top,請(qǐng)?jiān)谒惴ǖ目杖碧幪钊脒m當(dāng)內(nèi)容,使之能正常工作。33、設(shè)有一個(gè)順序棧S,元素s1,
s2,
s3,
s4,
s5,
s6依次進(jìn)棧,假如6個(gè)元素的出棧順序?yàn)閟2,
s3,
s4,
s6,
s5,
s1,則順序棧的容量至少應(yīng)為多少?34、設(shè)有一個(gè)關(guān)鍵碼的輸入序列
{
55,
31,
11,
37,
46,
73,
63,
02,
07}
,
(1)
從空樹(shù)開(kāi)始構(gòu)造平衡二叉搜索樹(shù),
畫(huà)出每加入一個(gè)新結(jié)點(diǎn)時(shí)二叉樹(shù)的形態(tài)。若發(fā)生不平衡,
指明需做的平衡旋轉(zhuǎn)的類型及平衡旋轉(zhuǎn)的結(jié)果。
?(2)
35、關(guān)鍵碼的輸入序列
{
55,
31,
11,
37,
46,
73,
63,
02,
07
}請(qǐng)計(jì)算在二分法查找、二叉排序樹(shù)兩種的情況下等概率下查找成功的平均查找長(zhǎng)度。36、
廣義表A=(a,b,(c,d),(e,(f,g))),計(jì)算下面式子的值Head(Tail(Head(Tail(Tail(A)))))37、
下圖是用鄰接表存儲(chǔ)的圖,畫(huà)出此圖,并寫(xiě)出從C點(diǎn)開(kāi)始按深度優(yōu)先、廣度優(yōu)先遍歷該圖的結(jié)果。38、
用序列(46,88,45,39,70,58,101,10,66,34)建立一個(gè)排序二叉樹(shù),畫(huà)出該樹(shù),并求在等概率情況下查找成功的平均查找長(zhǎng)度。39、
判斷下列序列是否為堆,假如不是請(qǐng)調(diào)整為堆,假如是請(qǐng)判斷是什么類型的堆(101,88,46,70,34,39,45,58,66,10)40、
假設(shè)一棵二叉樹(shù)的層序序列是ABCDEFGHIJ和中序序列是DBGEHJACIF,請(qǐng)畫(huà)出該樹(shù)。41、
找出所有滿足下列條件的二叉樹(shù)a)
它們?cè)谙刃虮闅v和中序遍歷時(shí),得到的結(jié)點(diǎn)訪問(wèn)序列相同;b)
它們?cè)诤笮虮闅v和中序遍歷時(shí),得到的結(jié)點(diǎn)訪問(wèn)序列相同;c)
它們?cè)谙刃虮闅v和后序遍歷時(shí),得到的結(jié)點(diǎn)訪問(wèn)序列相同。42、
已知L是無(wú)表頭結(jié)點(diǎn)的單鏈表,其中P結(jié)點(diǎn)既不是首元結(jié)點(diǎn),也不是尾元結(jié)點(diǎn)。a)在P結(jié)點(diǎn)后插入S結(jié)點(diǎn)的語(yǔ)句序列是______(dá)b)在P結(jié)點(diǎn)前插入S結(jié)點(diǎn)的語(yǔ)句序列是______c)在表首插入S結(jié)點(diǎn)的語(yǔ)句序列是____(dá)__d)在表尾插入S結(jié)點(diǎn)的語(yǔ)句序列是______(dá)(1)
P->next=S;(2)
P->next=P->next->.next;(3)
P->next=S->next;(4)
S->next=P->next;(5)
S->next=L;(6)
S->next=NIL;(7)
Q=P;(8)
WHILE
P->next<>Q
P=P->next;(9)
WHILE
P->next!=NULL
P=P->next;(10)
P=Q;(11)
P=L;(12)
L=S;(13)
L=P;43、
已知樹(shù)T的先序遍歷序列為ABCDEFGHIJKL,后序遍歷序列為CBEFDJIKLHGA,請(qǐng)畫(huà)出樹(shù)T。44、
對(duì)關(guān)鍵字序列(72,87,61,23,94,16,5,58)進(jìn)行堆排序、快速排序、直接選擇排序,使之關(guān)鍵字遞增有序,請(qǐng)寫(xiě)出每個(gè)排序的前三趟結(jié)果。45、
請(qǐng)畫(huà)出廣義表D的圖形表達(dá)D=(D,(a,b),((a,b),c),(
))46、
若一二叉樹(shù)有2度結(jié)點(diǎn)100個(gè),則其葉結(jié)點(diǎn)有多少個(gè)?該二叉樹(shù)可以有多少個(gè)1度頂點(diǎn)?47、
對(duì)于單鏈表、單循環(huán)鏈表和雙向鏈表,假如僅僅知道一個(gè)指向鏈表中某結(jié)點(diǎn)的指針
p
,能否將
p
所指結(jié)點(diǎn)的數(shù)據(jù)元素與其的確存在的直接前驅(qū)互換
?
請(qǐng)對(duì)每一種鏈表作出判斷,若可以,寫(xiě)出程序段;否則說(shuō)明理由。單鏈表和單循環(huán)鏈表的結(jié)點(diǎn)結(jié)構(gòu)為date
next
雙向鏈表的結(jié)點(diǎn)結(jié)構(gòu)為prior
dat(yī)e
next
(1)
單鏈表
(2)
單循環(huán)鏈表
(3)
雙向鏈表
47、已知散列函數(shù)為H(key)=key%7,散列表長(zhǎng)度為7(散列地址空間為0..6),待散列序列為:(25,48,32,50,68)。規(guī)定:(1)根據(jù)以上條件構(gòu)造一散列表,并用線性探測(cè)法解決有關(guān)地址沖突;?(2)若要用該散列表查找元素68,給出所需的比較次數(shù)。48、已知一組鍵值序列為(38,64,73,52,40,37,56,43),試采用快速排序法對(duì)該組序列作升序排序,并給出每一趟的排序結(jié)果。49、已知某二叉樹(shù)的順序存儲(chǔ)結(jié)構(gòu)如圖所示,試畫(huà)出該二叉樹(shù)。
50、設(shè)有一個(gè)關(guān)鍵碼的輸入序列{
55,
31,
11,
37,
46,
73,
63,
02,
07
}
(1)從空樹(shù)開(kāi)始構(gòu)造平衡二叉搜索樹(shù),
畫(huà)出每加入一個(gè)新結(jié)點(diǎn)時(shí)二叉樹(shù)
的形態(tài)。若發(fā)生不平衡,指明需做的平衡旋轉(zhuǎn)的類型及平衡旋轉(zhuǎn)的結(jié)果。(2)計(jì)算該平衡二叉搜索樹(shù)在等概率下的查找成功的平均查找長(zhǎng)度和查找不成功的平均查找長(zhǎng)度。51、求下列廣義表運(yùn)算的結(jié)果:1)
HEAD(p,h,w);2)
TAIL
(b,k,p,h);3)
HEAD
((a,b),(c,d));4)
TAIL
(a,b),(c,d);5)
HEAD(TAIL(((a,b),(c,d))))6)
TAIL(HEAD((a,b),(c,d)))52、畫(huà)出下列廣義表的圖形表達(dá):1)
D(A()),B(e),C(a,L(b,c,d))2)
J1(J2,(J1,a,J3(J1)),J3(J1))53、完畢下列規(guī)定:1)
請(qǐng)畫(huà)出下列廣義表的存儲(chǔ)結(jié)構(gòu)((((a),b)),(((),(d)),(e,f)))2)請(qǐng)寫(xiě)出下面鏈表表達(dá)的廣義表54、一棵二叉樹(shù)如圖:1)
寫(xiě)出對(duì)此樹(shù)進(jìn)行中序、先序、后續(xù)遍歷時(shí)得到的結(jié)點(diǎn)序列。2)
畫(huà)出樹(shù)的后序線索二叉樹(shù)。55、具有3個(gè)節(jié)點(diǎn)的樹(shù)和具有3個(gè)節(jié)點(diǎn)的二叉樹(shù)它們的所有不同形態(tài)有哪些?56、將下列森林轉(zhuǎn)化為二叉樹(shù)。57、已知一個(gè)圖如下所示,寫(xiě)出其臨接矩陣,并從頂點(diǎn)a出發(fā)按深度優(yōu)先搜索、按廣度優(yōu)先搜索,則可以得到所有頂點(diǎn)序列為什么?58、試問(wèn)在直接插入排序、希爾排序、快速排序、歸并排序、二分法排序、直接選擇排序中,哪些排序是穩(wěn)定的?哪些是不穩(wěn)定的,哪個(gè)排序平均比較次數(shù)最少?哪個(gè)排序規(guī)定內(nèi)存容量最多?59、哈希表中使用哈希函數(shù)H(key)=3
*
key
%
11,并采用開(kāi)放定址法解決沖突,隨機(jī)探測(cè)再散列的下一地址公式為:
d1=H
(key
)
di=(
di-1
+7
*
key
)
%
11
(I=2,3…..)試在0到10的散列地址空間中對(duì)關(guān)鍵字序列(22,41,53,46,30,13,01,67)畫(huà)出Hash表達(dá)意圖,并求在等概率情況下查找成功的平均查找長(zhǎng)度。60、什么是內(nèi)部排序?什么是排序方法的穩(wěn)定性?說(shuō)出你所學(xué)過(guò)的三個(gè)穩(wěn)定算法,一個(gè)不穩(wěn)定算法。61、何為隊(duì)列上溢?一般用什么方法解決,簡(jiǎn)述之。62、載入下圖所示的有權(quán)圖G,回答下列問(wèn)題:1)
給出從結(jié)點(diǎn)v1出發(fā)按深度優(yōu)先搜索遍歷圖所得的結(jié)點(diǎn)序列;2)
給出圖的拓?fù)湫蛄校?)
給出從結(jié)點(diǎn)v1到結(jié)點(diǎn)v8的最短途徑和關(guān)鍵途徑。63、對(duì)于下圖,請(qǐng)給出1)
相應(yīng)的鄰接矩陣,并給出A,B,C三個(gè)頂點(diǎn)的入度和出度;2)
鄰接表表達(dá)和逆鄰接表表達(dá);3)
求其連同分量;64、對(duì)于下圖的樹(shù),分別用孩子鏈表和孩子兄弟鏈表法畫(huà)出存儲(chǔ)結(jié)構(gòu)。65、對(duì)于下圖的樹(shù),請(qǐng)分別用中序、先序的方法寫(xiě)出其遍歷結(jié)果。
66、已知一個(gè)表{jan,feb,mar,apr,may,june,july,aug,sep}1)
使按表中元素的順序依次插入一棵初始為空的二叉排序樹(shù),畫(huà)出表中元素構(gòu)成的二叉排序樹(shù)。2)
求初等概率情況下查找july的查找長(zhǎng)度。67、數(shù)組a[1..10,-2..6,2..8]以行優(yōu)先的順序存儲(chǔ),設(shè)第一個(gè)元素的首地址為100,每個(gè)元素占3個(gè)存儲(chǔ)長(zhǎng)度的存儲(chǔ)空間,則元素A[5,1,8]的存儲(chǔ)地址為多少?
68、設(shè)有一組關(guān)鍵字(17,13,153,29,35,21)需插入到表長(zhǎng)為12的表中,請(qǐng)回答下列問(wèn)題:1)
自己設(shè)計(jì)一個(gè)合理的散列函數(shù)2)
用自己設(shè)計(jì)的函數(shù)將上述關(guān)鍵字插入到散列表中,畫(huà)出其結(jié)構(gòu);并指出用線性探測(cè)法解決沖突構(gòu)造散列表的裝填因子為多少?69、已知一棵三階B-樹(shù)如下圖所示,假定依次從中刪除關(guān)鍵字46,24,52,8,93和80試畫(huà)出每次刪除結(jié)點(diǎn)后樹(shù)的情況:70、已知一棵三階的B-樹(shù)如下圖所示,假定依次插入關(guān)鍵字
50,83,10請(qǐng)畫(huà)出插入個(gè)結(jié)點(diǎn)后樹(shù)的情況:71、令s=’aaab’,t=’abcaaa’,u=’abcaabbabcabaacbacbaaa’,分別求出他們的next值。72、請(qǐng)畫(huà)出下列二叉樹(shù)的中序線索化前趨鏈樹(shù),后序線索化后繼鏈樹(shù)。73、將下列結(jié)點(diǎn)按輸入順序構(gòu)造一棵二叉平衡樹(shù)。{As74、試在如圖所示線索化的二叉樹(shù)中,查找指定結(jié)點(diǎn)E的后繼結(jié)點(diǎn)、C的前驅(qū)結(jié)點(diǎn),并說(shuō)明找到結(jié)果的因素。75、什么是數(shù)據(jù)結(jié)構(gòu)?76、試比較線性表的順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的優(yōu)缺陷。77、堆棧和隊(duì)列都是特殊線性表,其特殊性是什么?78、將兩個(gè)棧存入數(shù)組V[1..m]中應(yīng)如何安排最佳?這時(shí)??諚M的條件是什么?79、內(nèi)存中一片連續(xù)空間(不妨假設(shè)地址從1到m),提供應(yīng)兩個(gè)棧S1和S2使用,如何分派這部分存儲(chǔ)空間,使得對(duì)任一個(gè)棧,僅當(dāng)這部分空間全滿時(shí)才發(fā)生上溢。80、給出數(shù)組
int
A[3…8,2…6];當(dāng)它在內(nèi)存中按行存放和按列存放時(shí),分別寫(xiě)出數(shù)組元素A[i,j]的地址計(jì)算公式(設(shè)每個(gè)元素占兩個(gè)存儲(chǔ)單元)。81、若一二叉樹(shù)有2度結(jié)點(diǎn)100個(gè),則其葉結(jié)點(diǎn)有多少個(gè)?該二叉樹(shù)可以有多少個(gè)1度頂點(diǎn)?82、如圖所示的二叉樹(shù)完畢中序遍歷、后續(xù)遍歷、先序遍歷,并畫(huà)出后續(xù)線索化的二叉樹(shù)。83、將下圖轉(zhuǎn)換為二叉樹(shù),對(duì)轉(zhuǎn)換后的二叉樹(shù)進(jìn)行先根、中根、后根遍歷。84、有一組數(shù)值14、21、32、15、28,畫(huà)出哈夫曼樹(shù)的生成過(guò)程及最后結(jié)果。85、有n個(gè)頂點(diǎn)的有向連通圖最多有多少條邊?最少有多少條邊?86、什么是哈夫曼(Huffman)樹(shù)?87、已知圖G={V
,
E}
V={
a,
b,
c,
d,
e
}
E={(a,
b),(b,
d),(c,
d),(d,
e),(e,
a),(a,
c)}畫(huà)出圖G,畫(huà)出圖G的鄰接表。88、設(shè)一個(gè)有向圖為G=(V,E),其中V={v1,v2,v3,v4},E={<v2,v1>,<v2,v3>,<v4,v1>,<v1,v4>,
<v4,v2>},畫(huà)出該有向圖,并求出每個(gè)結(jié)點(diǎn)的入度和出度,畫(huà)出相應(yīng)的鄰接矩陣、鄰接表和逆鄰接表。89、請(qǐng)給出下圖的鄰接矩陣和鄰接表。90、請(qǐng)畫(huà)出下圖中的極大連通子圖。91、對(duì)于如下圖請(qǐng)畫(huà)出其用prim和kruskal兩種不同算法生成最小生成樹(shù)的各條邊的并入順序。畫(huà)出最小生成樹(shù)。并寫(xiě)出廣度優(yōu)先和深度優(yōu)先的結(jié)點(diǎn)遍歷順序。92、什么是靜態(tài)查找,什么時(shí)動(dòng)態(tài)查找,什么叫平均查找長(zhǎng)度。93、用序列(46,88,45,39,70,58,101,10,66,34)建立一個(gè)二叉排序樹(shù),畫(huà)出該樹(shù),并求在等概率情況下查找成功的平均查找長(zhǎng)度。94、已知一個(gè)線性表(38,25,74,63,52,48),假定采用h(k)=k%7計(jì)算散列地址進(jìn)行散列存儲(chǔ),若引用線性探測(cè)的開(kāi)放地址法解決沖突,則在該散列表上進(jìn)行檢索的平均檢索長(zhǎng)度為多少,若運(yùn)用連地址法解決沖突,則在該散列表上進(jìn)行檢索的平均查找長(zhǎng)度為多少?設(shè)地址空間為9。請(qǐng)畫(huà)出算列表。96、已知長(zhǎng)度為12的表:(Jan
,
Fed
,
Mar
,
Apr
,
May
,
Jun
,
Aug
,
Sep
,
Oct
,
Nov
,
Dec)按表中元素的順序,依次插入一棵初始為
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025亮化工程勞務(wù)合同范本
- 工程單項(xiàng)勞務(wù)合同2025年
- 2024商鋪?zhàn)赓U合同范本(含租賃保證金條款)3篇
- 2025還建房屋買賣合同書(shū)
- 學(xué)校宿舍建筑工程承包施工合同(2025年)
- 2024年版權(quán)轉(zhuǎn)讓合同服務(wù)內(nèi)容規(guī)范
- 2024年地質(zhì)災(zāi)害防治與地質(zhì)勘探一體化合同3篇
- 2024年度個(gè)人反擔(dān)保合同樣本6篇
- 2024年度鈾礦探礦權(quán)與采礦權(quán)出讓及核燃料加工合同3篇
- 2025年物業(yè)管理合同法律法規(guī)
- 小學(xué)科學(xué)實(shí)驗(yàn)圖片和文字
- 2023年法考鐘秀勇講民法講義電子版
- 施工單位自查自糾記錄表
- 產(chǎn)品合格證出廠合格證A4打印模板
- IEC60287中文翻譯版本第一部分課件
- 《公路隧道設(shè)計(jì)細(xì)則》(D70-2010 )【可編輯】
- 農(nóng)業(yè)開(kāi)發(fā)有限公司章程范本
- GB 4806.11-2023食品安全國(guó)家標(biāo)準(zhǔn)食品接觸用橡膠材料及制品
- 化工企業(yè)隱患排查與治理
- 自然辯證法智慧樹(shù)知到課后章節(jié)答案2023年下浙江大學(xué)
- 循環(huán)冷卻水處理和“趨零”排放新技術(shù)
評(píng)論
0/150
提交評(píng)論