




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、(按照自己的情況選作部分習(xí)題,不要抄襲)第二章 習(xí)題順序存儲(chǔ)線性表一判斷題1線性表的邏輯順序與存儲(chǔ)順序總是一致的。X2順序存儲(chǔ)的線性表可以按序號(hào)隨機(jī)存取。V3順序表的插入和刪除操作不需要付出很大的時(shí)間代價(jià),因?yàn)槊看尾僮髌骄挥薪话氲脑匦枰苿?dòng)。X4. 線性表中的元素可以是各種各樣的,但同一線性表中的數(shù)據(jù)元素具有相同的特性,因此是屬于同一數(shù)據(jù)對(duì)象。 V5 在線性表的順序存儲(chǔ)結(jié)構(gòu)中,邏輯上相鄰的兩個(gè)元素在物理位置上并不一定緊鄰。X6.在線性表的順序存儲(chǔ)結(jié)構(gòu)中,插入和刪除時(shí),移動(dòng)元素的個(gè)數(shù)與該元素的位置有關(guān)。V二 單選題(請(qǐng)從下列A B, C, D選項(xiàng)中選擇一項(xiàng))1線性表是(A )。(A) 一個(gè)
2、有限序列,可以為空;(B)個(gè)有限序列,不能為空;(C) 一個(gè)無限序列,可以為空;(D)個(gè)無序序列,不能為空。2 對(duì)順序存儲(chǔ)的線性表,設(shè)其長(zhǎng)度為n,在任何位置上插入或刪除操作都是等概率的。插入一個(gè)元素時(shí)平均要移動(dòng)表中的( A )個(gè)元素。(A) n/2(B) n+1/2(C) n -1/2(D) n三填空題1 在順序表中做插入操作時(shí)首先檢查表是否滿了。四算法設(shè)計(jì)題1. 設(shè)線性表存放在向量 Aarrsize的前elenum個(gè)分量中,且遞增有序。試寫一算法,將 x插入到線性表的適當(dāng)位置上,以保持線性表的有序性。并且分析算法的時(shí)間復(fù)雜度。2. 已知一順序表A,其元素值非遞減有序排列,編寫一個(gè)函數(shù)刪除順序
3、表中多余的值相同 的元素。3. 編寫一個(gè)函數(shù),從一給定的順序表 A中刪除值在xy(x0)個(gè)人按順時(shí)針方向圍坐一圈,每個(gè)人持有一個(gè)正整數(shù)密碼。開始時(shí)任選一個(gè)正整數(shù)做為報(bào)數(shù)上限m從第一個(gè)人開始順時(shí)針方向自1起順序報(bào)數(shù),報(bào)到m是停止報(bào)數(shù),報(bào)m的人出列,將他的密碼作為新的m值,從他的下一個(gè)人開始重新從 1 報(bào)數(shù)。如此下去,直到所有人全部出列為止。令 n 最大值取 30。要求設(shè)計(jì)一個(gè)程序模擬此過程,求出出列編號(hào)序列。package 算法設(shè)計(jì) ;importimportimportpublic class YueSeFu public static void main(String args) Scann
4、er scan =new Scanner;請(qǐng)輸入總?cè)藬?shù): );int totalNum = ();請(qǐng)輸入報(bào)數(shù)的大?。?;int cycleNum = ();yuesefu (totalNum, cycleNum);();public static void yuesefu( int totalNum, int countNum) e twh- : | x x 張上上牡| - f rfpublic c-lae YueSeFu 1匕曲止F n拓九1匚用龍|Z Mljn * -11? ?(111耳?public as t a tic void main (St ring 0 芝 g且)誦羽3:Sca
5、nner scan - new gcanner(system1* uout.printJ:F11i匕 七ota 1Hmu = scan . nex七工E12Syateni. out.pr廣追堆人把力J. T-1 ;913int cycleHum = scan.neKtlnt():1214yd蘭蟲亙譽(yù)口(亡亡亡cycleNuzi):1515scan.close);ie1百211、7Upublic static void yuQofu (int totint co24211 9/呵妲此人妁30List :itart = new ArrayList;132 3F1724/一第氏令開吃計(jì)至22012
6、/k - k 4- coiifitEJiimj!7mk的畫弓世J(14刖k - k % OtdltL) - 1;20/判斷縣啻到鈦6E28n 4占廳F A Ifj鏈表中最常用的操作是在最后一個(gè)元素之后插入一個(gè)元素和刪除最后一個(gè)元素,則采用(D)存儲(chǔ)方式最節(jié)省運(yùn)算時(shí)間。(A) 單鏈表(B) 雙鏈表(C) 單循環(huán)鏈表(D) 帶頭結(jié)點(diǎn)的雙循環(huán)鏈表5. 循環(huán)鏈表的主要優(yōu)點(diǎn)是(D )。(A) 不在需要頭指針了(B) 已知某個(gè)結(jié)點(diǎn)的位置后,能夠容易找到他的直接前趨(C) 在進(jìn)行插入、刪除運(yùn)算時(shí),能更好的保證鏈表不斷開(D) 從表中的任意結(jié)點(diǎn)出發(fā)都能掃描到整個(gè)鏈表6. 下面關(guān)于線性表的敘述錯(cuò)誤的是(B )。
7、(A) 線性表采用順序存儲(chǔ),必須占用一片地址連續(xù)的單元;(B) 線性表采用順序存儲(chǔ),便于進(jìn)行插入和刪除操作;(C) 線性表采用鏈?zhǔn)酱鎯?chǔ),不必占用一片地址連續(xù)的單元;(D) 線性表采用鏈?zhǔn)酱鎯?chǔ),不便于進(jìn)行插入和刪除操作;7. 單鏈表中,增加一個(gè)頭結(jié)點(diǎn)的目的是為了(C )。(A)使單鏈表至少有一個(gè)結(jié)點(diǎn)(B)標(biāo)識(shí)表結(jié)點(diǎn)中首結(jié)點(diǎn)的位置(C) 方便運(yùn)算的實(shí)現(xiàn)(D)說明單鏈表是線性表的鏈?zhǔn)酱鎯?chǔ)& 若某線性表中最常用的操作是在最后一個(gè)元素之后插入一個(gè)元素和刪除第一個(gè)元素,則采用(D )存儲(chǔ)方式最節(jié)省運(yùn)算時(shí)間。(A)單鏈表(B)僅有頭指針的單循環(huán)鏈表(C)雙鏈表(D)僅有尾指針的單循環(huán)鏈表9.若某線性表中最常
8、用的操作是取第i個(gè)元素和找第i個(gè)元素的前趨元素,則采用()存儲(chǔ)方式最節(jié)省運(yùn)算時(shí)間( C )。(A)單鏈表(B)順序表(C)雙鏈表(D)單循環(huán)鏈表三填空題1 帶頭結(jié)點(diǎn)的單鏈表H為空的條件是_ H-n ext = NULL 。1.非空單循環(huán)鏈表L中*p是尾結(jié)點(diǎn)的條件是 p-next = L 。3. 在一個(gè)單鏈表中p所指結(jié)點(diǎn)之后插入一個(gè)由指針f所指結(jié)點(diǎn),應(yīng)執(zhí)行s-next=_ p-next;禾廿p-next=s的操作。4. 在一個(gè)單鏈表中p所指結(jié)點(diǎn)之前插入一個(gè)由指針f所指結(jié)點(diǎn),可執(zhí)行以下操作:s-next=_ p-next;p_n ext=s;t=p_data;p-data= s-data;s-da
9、ta= t;四算法設(shè)計(jì)題1.已知帶頭結(jié)點(diǎn)的單鏈表L中的結(jié)點(diǎn)是按整數(shù)值遞增排列的,試寫一算法,將值為x的結(jié)點(diǎn)插入到表L中,使得L仍然有序。并且分析算法的時(shí)間復(fù)雜度。package xiti;class Liiint data;Lii next;public Lii()data=0;public Lii( int id)data=id;public void display();class Lii_2public Lii first;public Lii_2()f irst= new Lii();public boolean isEmpty()r eturn = null );public boo
10、lean insert_2( int id) Lii newnode = new Lii(id);Lii p=first;p=;while != null &一 J=newnode;r eturn true ;public void listdisplay()Lii p=first; 顯示鏈表: );while (p!= null )();p=;n *“、publicclassLpublicstaticvoidmain(String args)Lii2 s1=new Lii_2();for ( int i=1;i=9;i=i+2) (i);();(2);();30Lii riswnodl =n
11、*w Lii (id)L丄l pfiratawhile (pnext I nullfttr. ncRt. dataneKt=i- .nest;?:川 x t = 2 wn o 心rturn true; tS已 亠 g TJ 昭口L In-A El 可羅I f上山叫兵沖 *畔JOIITtr-SjTB Tfpublic vflid 113tdl3play)(Lilpwt.ptintin7tJ= I;whil(p!-null):,displ ay ( jj, g4041p-p K I Im j 一1彳一 F rrturn 七mj;MUhm 巨 nwq屮iw日耳劉 T回2 912 15 19 20 2
12、330public Int get(int index* *1link p-fIratp品示璉養(yǎng):1寸31 (p !-xiull&ii indexB0)i int j O710 14 17 21 2634while(p!-null4fijindex章贏襄,35j卄210 12 14 15 17 19 2021 23236psp -口品xt: ?* *# * # 吉金 # * 古電 * * 37)3Bif (p l =n.-uiH|J GjiE*tumi p,- d-a t a ?411J return 0?i1public int Length() link p-lzstj4 5x iQ-;4
13、6while(p!-null)47pp nexT:4S49丄斗和 ) Qeaturn i;B* inaertE-aak (.13) ?B 亠 insert Back (10)匸B* insert Back (12) rB* insert Back (18) jrB. listDisplay);C i:. interSeetisn (A, B) jr listDiaplay ();設(shè)有一個(gè)雙向鏈表,每個(gè)結(jié)點(diǎn)中除有prior、data和next域外,還有一個(gè)訪問頻度freq域,在鏈表被起用之前,該域其值初始化為零。每當(dāng)在鏈表進(jìn)行一次Locata(L,x)運(yùn)算后,令值為x的結(jié)點(diǎn)中的freq域增1,并
14、調(diào)整表中結(jié)點(diǎn)的次序,使其按訪問頻度的遞減序列排列,以便使頻繁訪問的結(jié)點(diǎn)總是靠近表頭。試寫一個(gè)算法滿足上述要求的Locata(L,x)算法。五上機(jī)實(shí)習(xí)題目1. 一元多項(xiàng)式的相加提示:(1)一元多項(xiàng)式的表示問題:對(duì)于任意一元多項(xiàng)式:Pn(x)= P 0+ P1X1+ P2X2+ + P iX+ + P nX可以抽象為一個(gè)由“系數(shù)-指數(shù)”對(duì)構(gòu)成的線性表,且線性表中各元素的指數(shù) 項(xiàng)是遞增的:P=( ( P 0,0), ( P 1,1), ( P 2,2),,(P n, n)(2 )用一個(gè)單鏈表表示上述線性表,結(jié)點(diǎn)結(jié)構(gòu)為:12typedef sturct node float coef;int exp;
15、 struct node Ploy Node;/*系數(shù)域*/*指數(shù)域*/* next;/*指針域*/coef exp nextpackage 一元多項(xiàng)式的加法import 一元多項(xiàng)式的加法.;public class Lin kedAdd public Node add(Elem e1,Elem e2) Node pre=();Node qre=();Node p=;Node q=;Node result=p;while(p!=null & q!=null)ifNode temp=;=q;=p; q=temp;else=+;if=0)一,p=;elsepre=p;p=;一,q=;if(q!=n
16、ull)=q;return result;public static void main(String args) Elem node1=new Elem();(7,0);(12,3);(2,8);(5,12);Elem node2=new Elem();(4,1);(6,3);(2,8);(5,20);(7,28);LinkedAdd l=new LinkedAdd(); Node node=(node1, node2); while(node!=null)coef:+ exp:+; node=;package 一元多項(xiàng)式的加法 ;class Elempublic class Nodepub
17、lic int coef;/系數(shù)public int exp;/指數(shù)下一個(gè)節(jié)點(diǎn)public Node next=null;/ public Node()coef=0;exp=0;public Node(int coef,int exp) =coef;=exp;public Node first=new Node();添加節(jié)點(diǎn)public void in sert(i nt coef,i nt exp)Node node=new Node(coef,exp); if(first=null)=no de;elseNode temp=first;while!=null)temp=; =node;public Node getNode() return first;JL Li:iJ,M歸| A 丄-1占*15E冬致蘭府址虜r止hnkMitMM曲找團(tuán)H1點(diǎn)皿e叫w上*I19TF讓 Dcof:7flXpzO3元帝頌畫的加coef:4exp; 11puhlle elass LinkedAdd CQe f:1B-E xp 1 3public Nidie faddEleni pt ,ElG-m a;?) 1cc-ef: 4e
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣東省實(shí)驗(yàn)中學(xué)廣州市天河區(qū)附屬實(shí)驗(yàn)學(xué)校2021-2022學(xué)年八年級(jí)下學(xué)期期中物理試題(含答案)
- 基層中醫(yī)藥知識(shí)培訓(xùn)課件
- (一模)哈三中2025屆高三第一次模擬考試 英語試題(含答案)
- 物業(yè)管理服務(wù)委托及管理費(fèi)支付協(xié)議
- 安東尼奇妙的冒險(xiǎn)故事讀后感
- 項(xiàng)目執(zhí)行工作計(jì)劃書與時(shí)間表安排
- 山西省晉中市太谷區(qū)職業(yè)中學(xué)校2024-2025學(xué)年高一上學(xué)期期末考試生物試題
- 企業(yè)文件保密制度表格化處理記錄
- 三農(nóng)問題社會(huì)調(diào)查方法與技術(shù)指導(dǎo)書
- 離職員工知識(shí)產(chǎn)權(quán)保密協(xié)議
- DB3410T 34-2024特定地域單元生態(tài)產(chǎn)品價(jià)值核算規(guī)范
- 無人機(jī)操控技術(shù) 課件全套 項(xiàng)目1-6 緒論-無人機(jī)自動(dòng)機(jī)場(chǎng)
- 江蘇紅豆實(shí)業(yè)股份有限公司償債能力分析
- 青島中石化輸油管道爆炸事故調(diào)查報(bào)告
- 2024年蘇州職業(yè)大學(xué)高職單招(英語/數(shù)學(xué)/語文)筆試歷年參考題庫含答案解析
- 充電樁采購安裝投標(biāo)方案(技術(shù)方案)
- 教科版小學(xué)科學(xué)六年級(jí)下冊(cè)單元練習(xí)試題及答案(全冊(cè))
- 《Java程序設(shè)計(jì)》電子課件
- 乳腺癌患者的疼痛護(hù)理課件
- 研課標(biāo)說教材修改版 八年級(jí)下冊(cè)
- 江西宜春城市文化介紹
評(píng)論
0/150
提交評(píng)論