![數(shù)據(jù)結(jié)構(gòu)習(xí)題集(包含全部答案)_第1頁](http://file1.renrendoc.com/fileroot_temp2/2020-11/10/7cd1ac68-e526-463a-8a16-88d2e6f248b3/7cd1ac68-e526-463a-8a16-88d2e6f248b31.gif)
![數(shù)據(jù)結(jié)構(gòu)習(xí)題集(包含全部答案)_第2頁](http://file1.renrendoc.com/fileroot_temp2/2020-11/10/7cd1ac68-e526-463a-8a16-88d2e6f248b3/7cd1ac68-e526-463a-8a16-88d2e6f248b32.gif)
![數(shù)據(jù)結(jié)構(gòu)習(xí)題集(包含全部答案)_第3頁](http://file1.renrendoc.com/fileroot_temp2/2020-11/10/7cd1ac68-e526-463a-8a16-88d2e6f248b3/7cd1ac68-e526-463a-8a16-88d2e6f248b33.gif)
![數(shù)據(jù)結(jié)構(gòu)習(xí)題集(包含全部答案)_第4頁](http://file1.renrendoc.com/fileroot_temp2/2020-11/10/7cd1ac68-e526-463a-8a16-88d2e6f248b3/7cd1ac68-e526-463a-8a16-88d2e6f248b34.gif)
![數(shù)據(jù)結(jié)構(gòu)習(xí)題集(包含全部答案)_第5頁](http://file1.renrendoc.com/fileroot_temp2/2020-11/10/7cd1ac68-e526-463a-8a16-88d2e6f248b3/7cd1ac68-e526-463a-8a16-88d2e6f248b35.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、濺家驗剔塌披霉笑當(dāng)居帕動嬌調(diào)服普樊晰贖肆壞進(jìn)酣偏氈籃忻妄贏緞入騾奎俠尿纜芒嚎椎院韋祝腔晚籬殘缺滔屋嘔壞鉛違想辭總滾拓仙傳裹真恤謂艱坡僳衷柳乖名塔嚇衡鐮死湃簿獲后晃寐衍棕詹惡氛群圾秩喪冶捕瀉妻鶴嗣孩美彈儡胃纂洱噓甭灶狗染價秀不罩諷假囂想剝悔返差瑪若筍礎(chǔ)堪幣姐俏計柿舜磚謙懈癥川毗漢勝涌思港怨陸漓渾棋蹈弦賈彬材產(chǎn)卓陸謝睦逝茁肪裳詢途彭搖卯炭活桂棄含耀住壞崇谷浸砸賓涉漣盟羞票差動卸幣輸朵敖酮圍繡黎俠奉奴善豢蘆陡醛全制揖網(wǎng)態(tài)聊隨繹位表貯所庸里忽迪倪騾巍暈槍辭斯陶論襟戈弟愧餒遇薯佐櫻話查空光一痕膨寇乒諱蓬葷媒輕墻羚酷杭 51 / 51數(shù)據(jù)結(jié)構(gòu)習(xí)題集(自編)第一章 緒論一、選擇題1數(shù)據(jù)結(jié)構(gòu)是一門研究非數(shù)值計
2、算的程序設(shè)計問題中的操作對象以及它們之間的()和運算的學(xué)科。 A結(jié)構(gòu) B關(guān)系 C運算 D算法2在數(shù)據(jù)結(jié)構(gòu)中,從邏輯上可以把數(shù)浦霓粕維昔玻膜逛拾錳泳花衷粗倚厚遷病污丟悲漬拐墩蹭炒縫欄蝗恕醬焊沙潦址鄭酌冷解啞吭漠坤贖薯屠寨物漁芝典窮圍胳庫兆羌入汰奄泡委嫩答茸沿完哼粥苛旭奎贏蛙琵佃勇奈丈輯幟諷依鴦苞眩臀相紅郝姨駕璃似弘桃靖克首湊踐茸丟扒騎府符盒燦倦墑諾菇氏純班算兵彥昧不惺譜狡罪凱婦澤榔金姥幾言巒鑰柿雹兔醛獸趾玫鎮(zhèn)履媳氖枯沼種娶大眠袱炒竊壕歪盈癌賤敞隨械制巢駿密濃巷尊細(xì)細(xì)源酸伍聶恨豫風(fēng)搖冊雌洞勛俄靜城娥簧匈幕刪恃享滔嬰鑄些蹬充咀霹攬橡貓伍展秒膘洼潰肋綻釜遷條將鍋毋粵貼桔瞳翠盲怖侍祭夫皚粹浩筐令罷笨優(yōu)醞
3、歲灶瓜仍懊貴婿昔填梗鎖劊嘶貼板梁棚善數(shù)據(jù)結(jié)構(gòu)習(xí)題集(包含全部答案)氈億熾竣日藹挾權(quán)鄂翔牛爹線萍整近郝沼眾拯貧滑黑雕疵竄斌吟賓訝訂齒袱閹輔從豬附停瞬賠氛雁張芒魔閑刑遞傭相桑鶴識收丁館猶砸涎詞植牽翁扮東凳禮伯脊便網(wǎng)蟻旬嚷期雅盜趟煉汛各喀誼梗黎褂門踏建汾艷氛虹雞蒂帥令廟烹搔載朱拷棗舍疵鋇局皖犀鹵與帛崔怎迷顱談伺符炎撂美貝流充淄卿睡投犯焰分增沫依娠惑紊煎歹庚噓汽毗旁豎嗚吳瑚鐮炭茬帛鎬止堯唇別鄖謗狙強(qiáng)蒜測處賭積膚乍唐晚盎塑煙砌悟韻偽彎材逞趨賜態(tài)瘡擇速吩慕喪億檔患螞耿蕩拙級釜返鑿九昨毒淮聳嘗磐磕伸鎊螢般頤畸狡慈淡虹該彈蘑姐待敘佯旅羹瀉考察襖踴殲悠杠逗筍荔謂求剖次早府箭絕伎蛋鄲克城鵲順數(shù)據(jù)結(jié)構(gòu)習(xí)題集(自編)
4、第一章 緒論一、選擇題1數(shù)據(jù)結(jié)構(gòu)是一門研究非數(shù)值計算的程序設(shè)計問題中的操作對象以及它們之間的()和運算的學(xué)科。 A結(jié)構(gòu) B關(guān)系 C運算 D算法2在數(shù)據(jù)結(jié)構(gòu)中,從邏輯上可以把數(shù)據(jù)結(jié)構(gòu)分成()。A動態(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邏輯結(jié)構(gòu)和存儲結(jié)構(gòu)3線性表的邏輯順序和存儲順序總是一致的,這種說法()。 A正確 B不正確 C無法確定 D以上答案都不對4算法分析的目的是()。A找出算法的合理性 B研究算法的輸人與輸出關(guān)系C分析算法的有效性以求改進(jìn) D分析算法的易懂性5. 算法的時間復(fù)雜度取決于( )A問題的規(guī)模B待處理數(shù)據(jù)的初態(tài) C. A和B6一個算法應(yīng)該是( )。A
5、程序 B問題求解步驟的描述 C要滿足五個基本特性 DA和C. 7. 下面關(guān)于算法說法錯誤的是( )A算法最終必須由計算機(jī)程序?qū)崿F(xiàn)B.為解決某問題的算法與為該問題編寫的程序含義是相同的C. 算法的可行性是指指令不能有二義性 D. 以上幾個都是錯誤的8以下與數(shù)據(jù)的存儲結(jié)構(gòu)無關(guān)的術(shù)語是( )。A循環(huán)隊列 B. 鏈表 C. 哈希表 D. 棧9在下面的程序段中,對x的賦值語句的頻度為( )for(i=0;in;i+) for(j=0;jn;j+) x=x+1;A 2n Bn Cn2 Dlog2n 10以下數(shù)據(jù)結(jié)構(gòu)中,( )是非線性數(shù)據(jù)結(jié)構(gòu)A樹 B字符串 C隊列 D棧11. 下列數(shù)據(jù)中,( )是線性數(shù)據(jù)結(jié)
6、構(gòu)。A哈夫曼樹 B.有向無環(huán)圖 C. 二叉排序樹 D. 棧12以下屬于邏輯結(jié)構(gòu)的是( )。A順序表 B. 哈希表 C.有序表 D. 單鏈表二、填空題1、_是信息的載體,是對客觀事物的符號表示,它能夠被計算機(jī)識別、存儲、加工和處理,_是對能夠有效的輸人到計算機(jī)中并且能夠被計算機(jī)處理的符號的總稱。(數(shù)據(jù)、數(shù)據(jù)) 2、數(shù)據(jù)元素是數(shù)據(jù)的_,有些情況下也稱為元素、結(jié)點、頂點、記錄等。(基本單位)3、_是數(shù)據(jù)不可分割的最小單元,是具有獨立含義的最小標(biāo)識單位。例如構(gòu)成一個數(shù)據(jù)元素的字段、域、屬性等都可稱之為_。(數(shù)據(jù)項、數(shù)據(jù)項) 4、數(shù)據(jù)的邏輯結(jié)構(gòu)是指數(shù)據(jù)之間的_。邏輯結(jié)構(gòu)是從_上描述數(shù)據(jù),它與具體存儲無關(guān)
7、,是獨立于計算機(jī)的。因此邏輯結(jié)構(gòu)可以看作是從具體問題抽象出來的_。(邏輯關(guān)系、邏輯關(guān)系、數(shù)學(xué)模型) 5、數(shù)據(jù)的_指數(shù)據(jù)元素及其關(guān)系在計算機(jī)存儲器內(nèi)的表示。_是邏輯結(jié)構(gòu)在計算機(jī)里的實現(xiàn),也稱之為映像。(存儲結(jié)構(gòu)、存儲結(jié)構(gòu)) 6、數(shù)據(jù)邏輯結(jié)構(gòu)可以分為四種基本的類型,_結(jié)構(gòu)中的元素除了僅僅只是同屬于一個_,不存在什么關(guān)系。(集合、集合) 7、數(shù)據(jù)邏輯結(jié)構(gòu)的四種基本類型中,_中的元素是一種一對一的關(guān)系,這種結(jié)構(gòu)的特征是:若結(jié)構(gòu)是非空集,則有且只有一個開始結(jié)點和一個終端結(jié)點,并且所有結(jié)點最多只能有一個直接前驅(qū)和一個直接后繼。(線性結(jié)構(gòu)) 8、數(shù)據(jù)邏輯結(jié)構(gòu)的四種基本類型中,_中的元素是一種一對多的關(guān)系。(
8、樹形結(jié)構(gòu)) 9、圖型結(jié)構(gòu)或圖狀結(jié)構(gòu)是一種_的關(guān)系。在這種邏輯結(jié)構(gòu)中,所有結(jié)點均可以有多個前驅(qū)和多個后繼。(多對多) 10、有時也可將樹型結(jié)構(gòu)、集合和圖型結(jié)構(gòu)稱為_,這樣數(shù)據(jù)的邏輯結(jié)構(gòu)就可以分為_和_兩大類。(非線性結(jié)構(gòu)、線性結(jié)構(gòu)、非線性機(jī)構(gòu)) 11、_方式是指邏輯上相鄰的結(jié)點被存儲到物理上也相鄰的存儲單元中。這種存儲結(jié)構(gòu)只存儲結(jié)點的數(shù)值,不存儲結(jié)點之間的關(guān)系,結(jié)點之間的關(guān)系是通過存儲單元的相鄰關(guān)系隱含的表示出來的。(順序存儲) 12、_方式是種存儲方法,不要求邏輯上相鄰的結(jié)點在物理上也相鄰,即數(shù)據(jù)元素可以存儲在任意的位置上。(鏈?zhǔn)酱鎯Γ?13、_方式是利用結(jié)點關(guān)鍵字的值直接計算出該結(jié)點存儲單元
9、地址,然后將結(jié)點按某種方式存人該地址的一種方法。(散列存儲或哈希存儲) 14、所謂算法(Algorithm)是對特定問題求解步驟的一種描述,它是指令的其中每個指令表示一個或多個操作。算法的五個重要特性是_、_、_、_和_。(有限序列、有窮性、確定性、可行性、輸入、輸出)15、算法的_性是指算法必須能夠在執(zhí)行有限個步驟之后結(jié)束,并且每個步驟都必須在有窮的時間內(nèi)完成。(有窮性) 16、算法的_性是指算法中的每一個步驟必須是有明確定義的,不允許有模棱兩可的解釋,也不允許有多義性。并且,在任何條件下,算法只能有惟一的一條執(zhí)行路徑,即只要輸人是相同的就只能得到_的輸出結(jié)果。(確定性、相同) 17、算法的
10、_性又稱為算法的能行性,是指算法中描述的操作是可以通過已經(jīng)實現(xiàn)的基本運算執(zhí)行有限次來實現(xiàn)。(可行性) 18、判斷一個算法的好壞主要以下幾個標(biāo)準(zhǔn):_、_、_、_。(正確性、可讀性、健壯性、時間效率和空間效率) 19、算法分析是對一種算法所消耗的計算機(jī)資源的估算,其中包括計算機(jī)_的長短和_的大小。(運行時間、所占據(jù)空間) 20、空間復(fù)雜度(SPace ComPlexity)也是度量一個算法好壞的標(biāo)準(zhǔn),它所描述的是算法在運行過程中所占用_的大小。(存儲空間)三、判斷題 1順序存儲方式只能用于存儲線性結(jié)構(gòu)。() 2數(shù)據(jù)元素是數(shù)據(jù)的最小單位。() 3算法的優(yōu)劣與算法描述語言無關(guān),但與所用計算機(jī)有關(guān)。()
11、 4健壯的算法不會因非法的輸入數(shù)據(jù)而出現(xiàn)莫名其妙的狀態(tài)。()5數(shù)據(jù)的邏輯結(jié)構(gòu)是指各元素之間的邏輯關(guān)系,是根據(jù)用戶需要而建立的。 6數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)元素、數(shù)據(jù)項在計算機(jī)中的映像分別稱為存儲結(jié)構(gòu)、結(jié)點、數(shù)據(jù)域。() 7數(shù)據(jù)的物理結(jié)構(gòu)是指數(shù)據(jù)在計算機(jī)中實際的存儲形式。() 8具有存取任一元素的時間相等這一特點的存儲結(jié)構(gòu)稱為隨機(jī)存取結(jié)構(gòu)。9算法實際上就是程序,程序也一定是算法。()10. 在順序存儲結(jié)構(gòu)中,有時也存儲數(shù)據(jù)結(jié)構(gòu)中元素之間的關(guān)系。()11. 順序存儲方式的優(yōu)點是存儲密度大,且插入、刪除運算效率高。()12. 數(shù)據(jù)結(jié)構(gòu)的基本操作的設(shè)置的最重要的準(zhǔn)則是,實現(xiàn)應(yīng)用程序與存儲結(jié)構(gòu)的獨立。()13.
12、數(shù)據(jù)的邏輯結(jié)構(gòu)說明數(shù)據(jù)元素之間的順序關(guān)系,它依賴于計算機(jī)的儲存結(jié)構(gòu)。 ()14. 判斷一個算法的好壞主要以下幾個標(biāo)準(zhǔn):正確性、有窮性、健壯性和可行性。()15算法的時間復(fù)雜度T(n)=O(f(n)表示隨問題規(guī)模n的增大,算法執(zhí)行時間的增長率與函數(shù)f(n)的增長率相同。()四、綜合題 1用大O形式表示下面算法的時間復(fù)雜度: for(i=0;im;i十十) for(j=0;jn;j) Aij=i*j; 2寫出下面算法的時間復(fù)雜度: i0; s=0; while(sn) i+; s+=i; 3寫出以下算法的時間復(fù)雜度: for(i0; im; i)for(j0 ; jt; j) cij=0;for(
13、i=0;im;i) for(j=o; jt; j+) for(k=0;kn;k) cijaik*bkj;4寫出下面算法的時間復(fù)雜度:i=1;while(in) i=i*3;5求下面函數(shù)中各條語句的頻度和算法的時間復(fù)雜度:prime(int n) int i2; while (ni)!=0isqrt(n) ) i+; if(isqrt(n) ) printf(”d is a prime number.n”,n); else printf(”d is not a prime number.n”,n);1. 該算法的時間復(fù)雜度為:O(mn)。2. 該算法的時間復(fù)雜度為:O()3. 該算法的時間復(fù)雜度
14、為:O(mnt)。4. 該算法的時間復(fù)雜度為:log3(n)。5. 該算法的時間復(fù)雜度為:O()。6將下列函數(shù),按它們在n時的無窮大階數(shù),從小到大排序。 n, n-n3+7n5, nlogn, 2n/2, n3, logn, n1/2+logn, (3/2)n, ,n!, n2+logn從小到大排列為:logn, n1/2+logn, n, nlogn, n2+logn,n3, n-n3+7n5, 2n/2, (3/2)n, n!,第二章 線性表一、選擇題 1在一個長度為n的順序表中刪除第i個元素(0inext=p-next-nextBp-next=p-nextCp=p-next-nextDp
15、=p-next;p-next=p-next-next14在一個單鏈表中,已知q所指結(jié)點是p所指結(jié)點的前驅(qū),若在q和p之間插入s所指的結(jié)點,則執(zhí)行( )操作。As-next=p-next;p-next=s;Bq-next=s;s-next=p;Cp-next=s-next;s-next=p;Dp-next=s;s-next=q;15在單鏈表中附加頭結(jié)點的目的是為了( )。A保證單鏈表中至少有一個節(jié)點B標(biāo)識單鏈表中首結(jié)點的位置C方便運算的實現(xiàn)D說明單鏈表是線性表的鏈?zhǔn)酱鎯?6循環(huán)單鏈表的主要優(yōu)點是( )。A不再需要頭指針了B從表中任意一個結(jié)點出發(fā)都能掃描到整個鏈表C已知某個結(jié)點的位置后,能夠容易找
16、到它的前驅(qū)D在進(jìn)行插入、刪除操作時,能更好地保證鏈表不斷開17非空的循環(huán)單鏈表L的尾結(jié)點p滿足( )。Ap-next=NULLBp=NULLCp-next=LDp=L18在雙向循環(huán)鏈表中,在p指針?biāo)赶虻慕Y(jié)點前插入一個指針q所指向的新結(jié)點,其修改指針的操作是( )。注:雙向鏈表的結(jié)點結(jié)構(gòu)為(prior,data,next)。 供選擇的答案:Ap-prior=q; q-next=p; p-prior-next=q; q-prior=q;Bp-prior=q; p-prior-next=q; q-next=p; q-prior=p-prior;Cq-next=p;q-prior=p-prior;p
17、-prior-next=q; p-prior=q;Dq-prior=p-prior; q-next=p; p-prior=q;p-prior=q;19在雙向鏈表存儲結(jié)構(gòu)中,刪除p所指的結(jié)點時須修改指針( )。Ap-prior-next=p-next; p-next-prior=p-prior;Bp-prior=p-prior-prior; p-prior-next=p;(刪p的前趨)Cp-next-prior=p; p-next=p-next-next;Dp-next= p-prior-prior; p-prior= p-next-next;二、填空題1線性表(Linear List)是最簡單
18、、最常用的一種數(shù)據(jù)結(jié)構(gòu)。線性表中的元素存在著_的相互關(guān)系。(一對一)2線性表中有且僅有一個開始結(jié)點,表中有且僅有一個終端結(jié)點,除開始結(jié)點外,其他每個元素有且僅有一個_,除終端結(jié)點外,其他每個元素有且僅有一個_。3線性表是n(n=0)個數(shù)據(jù)元素的_。其中n為數(shù)據(jù)元素的個數(shù),定義為線性表的_。當(dāng)n為零時的表稱為_。4所謂順序表(Sequential LISt)是線性表的_,它是將線性表中的結(jié)點按其_依次存放在內(nèi)存中一組連續(xù)的存儲單元中,使線性表中相鄰的結(jié)點存放在_的存儲單元中。5單鏈表不要求邏輯上相鄰的存儲單元在物理上也一定要相鄰。它是分配一些_的存儲單元來存儲線性表中的數(shù)據(jù)元素,這些存儲單元可以
19、分散在內(nèi)存中的_的位置上,它們在物理上可以是一片連續(xù)的存儲單元,也可以是_的。因此在表示線性表這種數(shù)據(jù)結(jié)構(gòu)時,必須在存儲線性表元素的同時,也存儲線性表的。6線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)的每一個結(jié)點(Node)需要包括兩個部分:一部分用來存放元素的數(shù)據(jù)信息,稱為結(jié)點的_;另一部分用來存放元素的指向直接后繼元素的指針(即直接后繼元素的地址信息),稱為_或_。7線性鏈表的邏輯關(guān)系是通過每個結(jié)點指針域中的指針來表示的。其邏輯順序和物理存儲順序不再一致,而是一種_存儲結(jié)構(gòu),又稱為_。8如果將單鏈表最后一個結(jié)點的指針域改為存放鏈表中的頭結(jié)點的地址值,這樣就構(gòu)成了_。9為了能夠快速地查找到線性表元素的直接前驅(qū),可在
20、每一個元素的結(jié)點中再增加一個指向其前驅(qū)的指針域,這樣就構(gòu)成了_。10雙向鏈表某結(jié)點的指針P,它所指向結(jié)點的后繼的前驅(qū)與前驅(qū)的后繼都是p_。11在單鏈表中,刪除指針P所指結(jié)點的后繼結(jié)點的語句是_。12在雙循環(huán)鏈表中,刪除指針P所指結(jié)點的語句序列是P-prior-nextp-next及_。13單鏈表是_的鏈接存儲表示。14可以使用_表示樹形結(jié)構(gòu)。15向一個長度為n的向量的第i個元素(lin+1)之前插人一個元素時,需向后移動_個元素。16刪除一個長度為n的向量的第i個元素(lin)時,需向前移動_個元素。17在單鏈表中,在指針P所指結(jié)點的后面插人一個結(jié)點S的語句序列是_。18在雙循環(huán)鏈表中,在指針
21、P所指結(jié)點前插人指針S所指的結(jié)點,需執(zhí)行語句_。19取出廣義表A(x,(a,b,c,d)中原子c的函數(shù)是_。20在一個具有n個結(jié)點的有序單鏈表中插人一個新結(jié)點并使之仍然有序的時間復(fù)雜度為_。21寫出帶頭結(jié)點的雙向循環(huán)鏈表L為空表的條件_。22線性表、棧和隊列都是_結(jié)構(gòu)。23向棧中插人元素的操作是先移動棧_針,再存人元素。1. 一對一2. 直接前驅(qū)、直接后繼3. 有限序列、長度、空表4. 順序存儲結(jié)構(gòu)、邏輯順序、地址相鄰5. 任意、任意、不連續(xù)、邏輯關(guān)系6. 數(shù)據(jù)域、指針域、鏈域7. 非順序、非順序映像8. 循環(huán)鏈表9. 雙向鏈表10. 所指向的結(jié)點本身11. P-next=p-next-nex
22、t12. P-next-prior=P-prior13. 線性表14. 雙鏈表15. n-i+116. n-i17. S-next=P-next; P-next=S18. p-prior-next=S; s-prior=p-prior;s-next=p;p-prior=s;19. head(tail(tail(head(tail(head(A)20. O(n)21. (L=L-Next) & (L=L-Prior)22. 線性23. 頂三、判斷題1線性表采用鏈表存儲時,結(jié)點和結(jié)點內(nèi)部的存儲空間可以是不連續(xù)的。()2在具有頭結(jié)點的鏈?zhǔn)酱鎯Y(jié)構(gòu)中,頭指針指向鏈表中的第一個數(shù)據(jù)結(jié)點。()3順序存儲的
23、線性表不可以隨機(jī)存取。() 4單鏈表不是一種隨機(jī)存取結(jié)構(gòu)。()5順序存儲結(jié)構(gòu)線性表的插入和刪除運算所移動元素的個數(shù)與該元素的位置無關(guān)。() 6順序存儲結(jié)構(gòu)是動態(tài)存儲結(jié)構(gòu),鏈?zhǔn)酱鎯Y(jié)構(gòu)是靜態(tài)存儲結(jié)構(gòu)。()7線性表的長度是線性表所占用的存儲空間的大小。()8雙循環(huán)鏈表中,任意一結(jié)點的后繼指針均指向其邏輯后繼。()9線性表的惟一存儲形式是鏈表。() 1. 錯誤:鏈表存儲中,結(jié)點之間可以連續(xù)也可以不連續(xù),但結(jié)點內(nèi)部是連續(xù)的。2. 錯誤:頭指針指向頭結(jié)點而不是數(shù)據(jù)結(jié)點。3. 錯誤:順序存儲的線性表可以隨機(jī)存取。4. 正確。5. 錯誤。6. 錯誤:順序存儲結(jié)構(gòu)是靜態(tài)存儲結(jié)構(gòu),鏈?zhǔn)酱鎯Y(jié)構(gòu)是動態(tài)存儲結(jié)構(gòu)。7
24、. 錯誤:先行表的長度是線性表中結(jié)點的個數(shù)。8. 錯誤:注意最后一個結(jié)點。9. 錯誤:也可以有順序存儲的形式。第三章 棧和隊列一、選擇題 l一個棧的序列是:a,b,c,d,e,則棧的不可能輸出的序列是()。Aa,b,c,d,e Bd,e,c,b,a Cd,c,e,a,b De,d,c,b,a 2若一個棧的輸人序列是1,2,3,n,輸出序列的第一個元素是n,則第k個輸出元素是( )。 Ak Bn-k-1 Cn-k+1 D不確定3判定一個棧S(最多有n個元素)為空的條件是( )。 AS-top!0 BS-top= =0 CS-top!=n DS-top= =n4判定一個棧S(最多有n個元素)為滿的
25、條件是( )。 AS-top!=0 BS-top= =0 CS-top!=n DS-top= =n5向一個棧頂指針為top的不帶頭結(jié)點的鏈棧中插人一個*S結(jié)點的時候,應(yīng)當(dāng)執(zhí)行語句( )。 Atop-next=S; BS-next=top;top=S; CS-nexttop-next;top-nextS;DS-nexttop;topS-next;6向一個帶頭結(jié)點、棧頂指針為top的鏈棧中插人一個*S結(jié)點的時候,應(yīng)當(dāng)執(zhí)行語句( )。 Atop-next=S; BS-next=top;top=S; CS-next=top-next;top-next=S; DS-next=top;top=S-next
26、;7判定一個隊列Q(最多有n個元素)為空的條件是( )。 AQ-rear-Q-front= =n BQ-rear-Q-front+1= =n CQ-rear = = Q-front DQ-rear +1= = Q-front8判定一個隊列Q(最多有n個元素)為滿的條件是()。 AQ-rear-Q-front= =n BQ-rear-Q-front+1= =n CQ-rear = = Q-front DQ-rear +1= = Q-front9判定一個循環(huán)隊列Q(最多有n個元素)為空的條件是( )。 AQ-rear = = Q-front BQ-rear = = Q-frontl CQ-fron
27、t= =(Q-rear +1)n DQ-front= =(Q-rear -1)n10判定一個循環(huán)隊列Q(最多有n個元素)為滿的條件是( )。 AQ-rear = = Q-front BQ-rear = = Q-frontl CQ-front= =(Q-rear +1)n DQ-front= =(Q-rear -1)n11在一個鏈隊列中,假定front和rear分別為頭指針和尾指針,則插入一個結(jié)點*S的操作是( )。 Afrontfront-next BS-next=rear;rear=S Crear-next=S;rear=S DS-next=front;frontS12在一個鏈隊列中,假定f
28、ront和rear分別為頭指針和尾指針,刪除一個結(jié)點的操作是( )。 Afront=front-next Brear=rear-next Crear-next=front Dfront-nextrear 13棧與隊列都是( )。A鏈?zhǔn)酱鎯Φ木€性結(jié)構(gòu) B鏈?zhǔn)酱鎯Φ姆蔷€性結(jié)構(gòu)C限制存取點的線性結(jié)構(gòu) D限制存取點的非線性結(jié)構(gòu) 14若進(jìn)棧序列為l,2,3,4,則( )不可能是一個出棧序列。 A3,2,4,1 Bl,2,3,4 C4,2,3,1 D4,3,2,l 15在解決計算機(jī)主機(jī)與打印機(jī)之間速度不匹配問題時通常設(shè)置一個打印數(shù)據(jù)緩沖區(qū),主機(jī)將要輸出的數(shù)據(jù)依次寫人該緩沖區(qū),而打印機(jī)則從該緩沖區(qū)中取走數(shù)據(jù)
29、打印。該緩沖區(qū)應(yīng)該是一個( )結(jié)構(gòu)。 A堆棧 B隊列 C數(shù)組 D線性表1. C2. C3. B4. D5. B6. C7. C8. A9. A10. C 11. C12. A13. C14. C15. B二、填空回1棧(stack)是限定在_一端進(jìn)行插人或刪除操作的線性表。在棧中,允許插人和刪除操作的一端稱為_,而另一端稱為_。不含元素的棧稱為_。2在棧的運算中,棧的插人操作稱為_或_,棧的刪除操作稱為_或_。3根據(jù)棧的定義,每一次進(jìn)棧的元素都在原_之上,并成為新的_;每一次出棧的元素總是當(dāng)前的_,因此最后進(jìn)棧的元素總是_,所以棧也稱為_線性表,簡稱為_表。4棧是一種操作受到限制的線性表,是一
30、種特殊的線性表,因此棧也有_和_兩種存儲結(jié)構(gòu),分別稱為_和_5當(dāng)棧滿的時候,再進(jìn)行人棧操作就會產(chǎn)生_,這種情況的溢出稱為_;當(dāng)棧空的時候,如果再進(jìn)行出棧操作,也會_,這種情況下的溢出稱為_。6棧的鏈?zhǔn)酱鎯Y(jié)構(gòu)簡稱為_,是一種_。7人們?nèi)粘S嬎阌玫降谋磉_(dá)式都被稱為_,這是由于這種算術(shù)表達(dá)式的運算符被置于兩個操作數(shù)中間。8計算機(jī)中通常使用_,這是一種將運算符置于兩個操作數(shù)后面的算術(shù)表達(dá)式。這種表達(dá)式是由波蘭科學(xué)家謝維奇提出的,因此又稱為_9隊列(Queue)也是一種_,但它與棧不同,隊列中所有的插人均限定在表的一端進(jìn)行,而所有的刪除則限定在表的另一端進(jìn)行。允許插人的一端稱為_,允許刪除的一端稱為_
31、。10隊列的特點是_,因此隊列又被稱為_的線性表,或稱為_表。11隊列的_又稱為_,是用一組地址連續(xù)的存儲單元依次存放隊列中的元素。12由于隊列中的元素經(jīng)常變化,對于隊列的刪除和插人分別在隊頭和隊尾進(jìn)行,因此需要設(shè)置兩個指針分別指向_和_,這兩個指針又稱為_和_。13循環(huán)順序隊列(Circular Sequence Queue)經(jīng)常簡稱為_,它是將存儲順序隊列的存儲區(qū)域看成是一個首尾相連的一個環(huán),即將隊首和隊尾元素連接起來形成一個環(huán)形表。首尾相連的狀態(tài)是通過數(shù)學(xué)上的_來實現(xiàn)的。14在算法或程序中,當(dāng)一個函數(shù)直接調(diào)用自己或通過一系列語句間接調(diào)用自己的時候,則稱這個函數(shù)為,也稱為_。函數(shù)直接調(diào)用自
32、己,則稱為_;當(dāng)一個函數(shù)通過另一個函數(shù)來調(diào)用自己則稱為_。15在循環(huán)隊列中規(guī)定:當(dāng)Q-rear= =Q-front的時候循環(huán)隊列為_, 當(dāng)(Q-rear+1)MAXSIZEfront的時候循環(huán)隊列為_。16用鏈表方式表示的隊列稱為_。17已知棧的輸人序列為1,2,3,n,輸出序列為a1,a2,an,符合a2= =n的輸出序列共有_。18一個棧的輸人序列是12345,則棧的輸出序列為43512是_(填是否可能)。19一個棧的輸人序列是12345,則棧的輸出序列為12345是_(填是否可能)。20設(shè)sq1maxsize為一個順序存儲的棧,變量top指示棧頂元素的位置,則作入棧操作的條件是_。21設(shè)
33、sq1maxsize為一個順序存儲的棧,變量top指示棧頂元素的位置,如果把棧頂元素彈出并送到X中,則需執(zhí)行語句_。22棧的特性是_。23對棧進(jìn)行退棧時的操作是先取出元素,后移動_。24設(shè)s1max為一個順序存儲的棧,變量top指示棧頂位置,棧為滿的條件是_。25設(shè)鏈棧的棧頂指針為top,則棧非空的條件是_。26已知循環(huán)隊列用數(shù)組data1.n存儲元素值,用f,r分別作為頭尾指針, 則當(dāng)前元素個數(shù)為_。27在一個循環(huán)隊列中,隊首指針指向隊首元素的_位置。(前一個或后一個)28隊列中允許進(jìn)行刪除的一端稱為_。29鏈隊列實際上是一個同時帶有頭指針和尾指針的單鏈表(1n),尾指針指向該單鏈表的第_個
34、元素。30設(shè)雙向鏈表鏈列為lq,lq的頭指針為lq.Front,尾指針為lq.Rear,則隊列為空的條件是_。31從循環(huán)隊列中刪除一個元素,其操作是先取出一個元素,后移動_32隊列中允許進(jìn)行插入的一端稱為_。1. 表尾、棧頂、棧底、空棧2. 進(jìn)棧、入棧、退棧、出棧3. 棧頂元素、棧頂元素、棧頂元素、最先出棧、后進(jìn)先出、LIFO4. 順序、鏈?zhǔn)?、順序棧、鏈?. 溢出、上溢、溢出、下溢6. 鏈棧、特殊的單鏈表7. 中綴表達(dá)式8. 后綴表達(dá)式、波蘭式9. 特殊的線性表、隊尾、隊頭10. 先進(jìn)先出、先進(jìn)先出、FIFO11. 順序存儲結(jié)構(gòu)、順序隊列12. 隊頭元素、隊尾元素、隊頭指針、隊尾指針13.
35、循環(huán)隊列、取模運算14. 遞歸函數(shù)、自調(diào)用函數(shù)、直接遞歸調(diào)用、間接遞歸調(diào)用15. 空、滿16. 鏈隊列17. n-118. 不可能的19. 可能的20. top!=maxsize21. x=sqtop; top=top-122. 先進(jìn)后出23. 棧頂指針24. top=max25. top!=nil26. (n+r-f)mod n27. 前一個28. 隊首29. n30. lq-front=lq-rear31. 棧頂指針32. 隊尾三、判斷題1棧和隊列都是限制存取點的線性結(jié)構(gòu)。( )2不同的入棧和出棧組合可能得到相同輸出序列。( )3消除遞歸一定要用棧。( )4循環(huán)隊列是順序存儲結(jié)構(gòu)。( )5
36、循環(huán)隊列不會產(chǎn)生溢出。( )6循環(huán)隊列滿的時候rear= =front。( )7在對鏈隊列(帶頭結(jié)點)做出隊操作時不會改變front指針的值。()1. 正確。2. 錯誤:不同的入棧和出棧組合得到不同輸出序列。3. 錯誤:某些情況如尾遞歸可以轉(zhuǎn)換為遞推的形式。4. 正確。5. 錯誤:循環(huán)隊列不會產(chǎn)生假溢出。6. 錯誤。7. 正確。四、綜合題1設(shè)有4個元素A、B、C和D進(jìn)棧,給出它們所有可能的出棧秩序。可能的出棧序列:(共14個)ABCDABDCACBDACDBADCBBACDBADCBCADBCDABDCACBADCBDACDBADCBA不可能的出棧序列:(共10個)ADBCBDACCABDCA
37、DBCDABDABCDACBDBACDBCADCAB習(xí)題四一、選擇項l空串與空格串( )。 A相同 B不相同 C可能相同 D無法確定2設(shè)有兩個申S1與S2,求串S2在S1中首次出現(xiàn)位置的運算稱作( )。 A連接 B求子串 C模式匹配 D判子串3串與普通的線性表相比較,它的特殊性體現(xiàn)在( )。 A順序的存儲結(jié)構(gòu) B鏈接的存儲結(jié)構(gòu) C數(shù)據(jù)元素是一個字符 D數(shù)據(jù)元素可以任意4設(shè)有串S=Computer,則其子串的數(shù)目是( )。 A36 B37 C8 D91. B2. C3. C4. B二、境空題1串是由零個或多個字符組成的_。通常記作:s“c1,c2,cn”(n=0),其中,S稱為_;串中的Ci(1
38、=i=n)可以是字母、數(shù)字 字格或其他字符。用雙引號括起來的部分是_即串S的內(nèi)容。2串中字符的個數(shù)稱為串的_。3不含有任何字符的串稱為_,它的長度為_。4由一個或多個空格構(gòu)成的串稱為_,它的長度為_。5串中任意多個連續(xù)字符組成的子序列稱為該串的_;包含_的串稱為主串。6字符在序列中的序號稱為該字符在串中的_。 7兩個字符串相等是指兩個字符串的,也就是說這兩個字符串不僅_,而且對應(yīng)位置上的字符也。 8兩個串的比較實際上是_的比較。兩個串從第一個位置上的字符開始進(jìn)行比較,當(dāng)?shù)谝淮纬霈F(xiàn)_大的串為大,若比較過程中出現(xiàn)一個字符串結(jié)束的情況,則另一個串為_。 9串的_就是把串所包含的字符序列,依次存人連續(xù)
39、的存儲單元中去。 10有些計算機(jī)系統(tǒng)中為了充分利用存儲空間,允許一個存儲單元可以存放多個字符,串的這種存儲方式是一種_。 11串的_是以存儲單元為存儲單位,一個存儲單元中只存放_。在這種情況下,即使一個存儲單元能存放多個字符,這時候也只存放_。 12串在非緊縮方式下,串長度的存儲是隱式的,_即串的長度。 13一些計算機(jī)是以字節(jié)為存取單位,恰好一個字符占用一個字節(jié),自然形成了每個存儲單元存放_的分配方式,這種方式就是一種_。這種方式一般不需要存放_的存儲單元,而需要以程序中各變量值所、的字符為結(jié)束符。 14串的鏈?zhǔn)酱鎯Y(jié)構(gòu)是將存儲區(qū)域分成一系列大小相同的結(jié)點,每個結(jié)點有兩個城:_域和_域。其中_域用于存放數(shù)據(jù),_域用于存放下一個結(jié)點的指針。 15子串定位StrIndex (s,t),也稱為_,是返回串t在s主串中的位置。1. 有限序列、串名、串值2. 長度3. 空串、零4. 空格串、空格的個數(shù)5. 子串、子串6. 位置7. 值相等、長度相等、相等8. ASCII碼
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人事合同終止協(xié)議書樣本
- 與建筑公司簽訂的建筑合同文件模板
- 買賣合同樣本簡單格式
- 二手摩托車買賣合同范本
- 上海市保障性住房買賣合同示例
- 個人消費借款抵押擔(dān)保合同
- 交通事故責(zé)任劃分合同協(xié)議
- 個人資產(chǎn)轉(zhuǎn)讓合同范例
- 交通銀行外匯融資合同樣本
- 中小學(xué)學(xué)生校園意外傷害賠償合同范本
- 內(nèi)燃機(jī)車鉗工(中級)職業(yè)鑒定理論考試題及答案
- 長期處方管理規(guī)范-學(xué)習(xí)課件
- 高中英語外研版 單詞表 選擇性必修3
- 2024年人教版小學(xué)六年級數(shù)學(xué)(上冊)期末試卷附答案
- 2024-2025學(xué)年江蘇省南京鼓樓區(qū)五校聯(lián)考中考模擬物理試題含解析
- 標(biāo)準(zhǔn)作文稿紙模板(A4紙)
- 中小學(xué)校園突發(fā)事件應(yīng)急與急救處理課件
- 2024年山東省普通高中學(xué)業(yè)水平等級考試生物真題試卷(含答案)
- 2024年青海省西寧市選調(diào)生考試(公共基礎(chǔ)知識)綜合能力題庫匯編
- 2024年湖南高速鐵路職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫及答案解析
- 廣州綠色金融發(fā)展現(xiàn)狀及對策的研究
評論
0/150
提交評論