



版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)報(bào)告(實(shí)驗(yàn)一) 深 圳 大 學(xué) 實(shí) 驗(yàn) 報(bào) 告 告 課程名稱: 數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)與課程設(shè)計(jì) 實(shí)驗(yàn)項(xiàng)目名稱: 實(shí)驗(yàn)一:順序表得應(yīng)用 學(xué)院: 計(jì)算機(jī)與軟件學(xué)院 專業(yè): 指導(dǎo)教師: : 蔡平 報(bào)告人: : 文成 學(xué)號(hào): 20 11 0259 級(jí)班 班級(jí): 5 實(shí)驗(yàn)時(shí)間: 20 2-9 17 實(shí)驗(yàn)報(bào)告提交時(shí)間: 20 29 2 教務(wù)部制 一、實(shí)驗(yàn)?zāi)康门c要求: 目得: 1、掌握線性表得基本原理 2、掌握線性表地基本結(jié)構(gòu) 3、掌握線性表地創(chuàng)建、插入、刪除、查找得實(shí)現(xiàn)方法 要求: 1、熟悉 c+語(yǔ)言編程 2、熟練使用+語(yǔ)言實(shí)現(xiàn)線性表地創(chuàng)建、插入、刪除、查找得實(shí)現(xiàn)方法 二、實(shí)驗(yàn)內(nèi)容: pr lem :
2、 數(shù)據(jù)結(jié)構(gòu) 驗(yàn) 實(shí)驗(yàn) 1 順序表例程 descriton 實(shí)現(xiàn)順序表得創(chuàng)建、插入、刪除、查找 nut 第一行輸入順序表得實(shí)際長(zhǎng)度 n 第二行輸入 n 個(gè)數(shù)據(jù) 第三行輸入要插入得新數(shù)據(jù)與插入位置 第四行輸入要?jiǎng)h除得位置 第五行輸入要查找得位置 utput 第一行輸出創(chuàng)建后,順序表內(nèi)得所有數(shù)據(jù),數(shù)據(jù)之間用空格隔開(kāi) 第二行輸出執(zhí)行插入操作后,順序表內(nèi)得所有數(shù)據(jù),數(shù)據(jù)之間用空格隔開(kāi) 第三行輸出執(zhí)行刪除操作后,順序表內(nèi)得所有數(shù)據(jù),數(shù)據(jù)之間用空格隔開(kāi) 第四行輸出指定位置得數(shù)據(jù) aple inpt 6 1 22 3 44 6 88 3 5 amle utput 11 2 33 44 55 66 11 2 8
3、8 33 44 55 66 11 2 88 3 5 6 22 int 第 i 個(gè)位置就是指從首個(gè)元素開(kāi)始數(shù)起得第個(gè)位置,對(duì)應(yīng)數(shù)組內(nèi)下標(biāo)為 i-1得位置 prob em b : 數(shù)據(jù)結(jié)構(gòu)- 驗(yàn) 實(shí)驗(yàn) 1 順序表得數(shù)據(jù)交換 descritn 實(shí)現(xiàn)順序表內(nèi)得元素交換操作 in 第一行輸入 n 表示順序表包含得n 個(gè)數(shù)據(jù) 第二行輸入個(gè)數(shù)據(jù),數(shù)據(jù)就是小于 10 得正整數(shù) 第三行輸入兩個(gè)參數(shù),表示要交換得兩個(gè)位置 第四行輸入兩個(gè)參數(shù),表示要交換得兩個(gè)位置 oupt 第一行輸出創(chuàng)建后,順序表內(nèi)得所有數(shù)據(jù),數(shù)據(jù)之間用空格隔開(kāi) 第二行輸出執(zhí)行第一次交換操作后,順序表內(nèi)得所有數(shù)據(jù),數(shù)據(jù)之間用空格隔開(kāi) 第三行輸出執(zhí)
4、行第二次交換操作后,順序表內(nèi)得所有數(shù)據(jù),數(shù)據(jù)之間用空格隔開(kāi) 注意加入交換位置得合法性檢查,如果發(fā)現(xiàn)位置不合法,輸出ror。 aple input 5 1 2 33 44 55 4 0 sample oupu 11 2 33 44 55 11 44 33 22 55 eror hint 本題執(zhí)行兩次交換操作,注意寫(xiě)好輸入接口。 proble : 數(shù)據(jù)結(jié)構(gòu) 驗(yàn) 實(shí)驗(yàn) 1 順序表得合并 desciptio 假定兩個(gè)順序表得數(shù)據(jù)已經(jīng)按照從小到大得順序排列,實(shí)現(xiàn)兩個(gè)順序表得合并 iut 第一行輸入 n 表示順序表 a 包含得n 個(gè)數(shù)據(jù) 第二行輸入 n 個(gè)數(shù)據(jù),數(shù)據(jù)就是小于 100 得正整數(shù) 第三行輸入
5、m 表示順序表 b 包含得n 個(gè)數(shù)據(jù) 第二行輸入個(gè)數(shù)據(jù),數(shù)據(jù)就是小于 10 得正整數(shù) utpu 輸出合并后得順序表內(nèi)得所有數(shù)據(jù),數(shù)據(jù)之間用空格隔開(kāi) smple iput 3 1 33 55 4 22 4 66 88 same output 11 3 44 5 6 8 問(wèn)題 d: 數(shù)據(jù)結(jié)構(gòu) - 實(shí)驗(yàn) 1 順序表得循環(huán)移位 題目描述 順序表得移位就是循環(huán)移位,例如順序表:,2,3,4,5,6。如果左移 1 位,即原來(lái)得頭元素移動(dòng)到末尾,其它元素向左移 1 位,變成 2,4,5,6,1。同理,如果右移 1 位,即原來(lái)得尾元素移動(dòng)到頭,其它元素向右移 1 位,變成 6,1,,3,4,5.以下就是移位得
6、多個(gè)例子: 原數(shù)據(jù):,2,3,4,5,6 左移 3 位:4,6,,2,3,與原數(shù)據(jù)對(duì)比 右移位:,4,5,6,1,,與原數(shù)據(jù)對(duì)比 請(qǐng)編寫(xiě)程序?qū)崿F(xiàn)順序表得循環(huán)移位操作 輸入 第一行輸入表示順序表包含得n 個(gè)數(shù)據(jù) 第二行輸入 n 個(gè)數(shù)據(jù),數(shù)據(jù)就是小于 10得正整數(shù) 第三行輸入移動(dòng)方向與移動(dòng)得位數(shù),左移方向?yàn)?0,右移方向?yàn)?1 第三行輸入移動(dòng)方向與移動(dòng)得位數(shù),左移方向?yàn)?0,右移方向?yàn)?1 輸出 第一行輸出創(chuàng)建后,順序表內(nèi)得所有數(shù)據(jù),數(shù)據(jù)之間用空格隔開(kāi) 第二行輸出執(zhí)行移位操作后,順序表內(nèi)得所有數(shù)據(jù),數(shù)據(jù)之間用空格隔開(kāi) 第三行輸出執(zhí)行移位操作后,順序表內(nèi)得所有數(shù)據(jù),數(shù)據(jù)之間用空格隔開(kāi) 如果發(fā)現(xiàn)輸入得
7、移動(dòng)方向或位數(shù)不合法,不執(zhí)行移位操作,輸出 er 樣例輸入 1 22 33 4 55 0 2 4 樣例輸出 1 22 3 44 55 3 4 5 1 44 5 1 22 33 三、 實(shí)驗(yàn)步驟與過(guò)程: 思路: 1.順序表類定義 、順序表得創(chuàng)建、插入、刪除、查找等功能得實(shí)現(xiàn) 3、順序表得測(cè)試運(yùn)行 源代碼: a : incluiostream using nmepace std; css ls pvte: i *elem;/ 素元組數(shù) n listsze;/ 度長(zhǎng)大最表序順 ;htgel tni / 度長(zhǎng)前當(dāng)表序順public: st(int size);/ 數(shù)函造構(gòu) lt(); /析構(gòu)函數(shù) it
8、istlenth(); /獲取順序表得實(shí)際長(zhǎng)度 nt litinser(t i,int e);/ 素元個(gè)一入插 ;) i(etetsil ni /刪除一個(gè)元素,返回刪除得元素 in getelem(n i); 值素元回返,素元個(gè)一取獲; lit:lis(in e) /構(gòu)造函數(shù) ;zsezitsi lenth0; eemnew intistsiz; ls::list() /析構(gòu)函數(shù) ;meletd /回收空間 int lst:isteng()/ 度長(zhǎng)際實(shí)得表序順取獲 ;htgne nute in list::lstinert(nt i,nt e)/ 素元個(gè)一入插 f (lengt=litze)
9、etrn 0;/ 滿已表序順 i (i1 | lngth+) 法合不值 i/ ; nruter )1+hgne=i( fi ;ehtgnelle ls )-;1ij;hgnel ti( o elemj=lemj-1; /位置 i 后面得元素全部后移一位 ;e=1imele ;hgn retun 1; in lit::lstdelte(t i) /刪除一個(gè)元素,返回刪除得元素 )0=tgnel( i reurn 0; )tgneli | 1( fi re 0; int m=elemi1; )+j;htgelj;1=j tni( rf/ 位一移前部全素元得面后 i 置位 ;1jml=jmele ;
10、-htgnel ;met nur int lit:getelm(it i) /獲取一個(gè)元素,返回元素值 )hgneli 1i(fi ;0 nrter ;1mele rur in main() ;m,l, ni lit mlis(0);/ 02 為度長(zhǎng)大最,表序順個(gè)一建創(chuàng) cilen; )+i;1nei;1=i(ro cinemp; ml、listiet(,tem); /)+i;+)(htgnltl、tsiymi;1(rof 表序順印打 ;' ')i(mleteg、tsimtuoc cutl; ;j,el ti ielej;/ 置位得入插及以數(shù)入插入輸 mylist、sinse(
11、j,em);/ 作操入插行執(zhí) for(i=1;iylit、islengt()1;i+) /打印插入后得結(jié)果 ; ')i(meletg、ymtuoc ;ldnuc ;jic /輸入刪除得位置 ;)(eeletsil、ilym/ 作操除刪行執(zhí) for(=;ilst、listlengh()+;i+) /打印插入后得結(jié)果 utmlist、tlm(i) ; ;ldnetuoc cinj; 據(jù)數(shù)得置位定指出輸/ ;ldn)(melete、tsilymto tur 0; b: includeiostram usng namae std; cass lis private: /;ee* tn/ 素元組
12、數(shù) int stsiz; /順序表最大長(zhǎng)度 /;htgnel tn/ 度長(zhǎng)前當(dāng)表序順pbc: lt(it ize);/構(gòu)造函數(shù) ;)(til /析構(gòu)函數(shù) int istlength();/ 度長(zhǎng)際實(shí)得表序順取獲 ;)e ti,i tni(trentsil ni /插入一個(gè)元素 it itdeete(it ); /刪除一個(gè)元素,返回刪除得元素 it getm(n i); / 值素元回返,素元個(gè)一取獲/;)b n,a s ti/ 素元個(gè)二換交; lis:list(in ize)/構(gòu)造函數(shù) ;ezisitsi ;0=htgnel lem=e ntlstize; it:list()析構(gòu)函數(shù) ;eeet
13、eed int lst:listng()/獲取順序表得實(shí)際長(zhǎng)度 ;htgne nruter int lt:listnert(nt ,it e) /插入一個(gè)元素 if (lent=stsze) return 0; /順序表已滿 )htni | 1( f return 0;/ 法合不值 i f (=lngth1) elementh=e; lse /)-j;1ij;htgnel=j tni( f/ 位一移后部全素元得面后 i 置位 elj=elej-1; elei1=e; ;+htgne ;1 nuter nt list:telete(in )/刪除一個(gè)元素,返回刪除得元素 )=htn( i ret
14、urn 0; )hnel | 1( f ;0 nuter ;imelepme t)+j;htgnelj;1= i( rof/ 位一移前部全素元得面后 i 置位 ;jel=jmle ;htge reurn temp; i lt::getee(int i) / 值素元回返,素元個(gè)一取獲 )htgeli | 1i(fi ;0 nrutr ;1-mele nruter n is:s a,int b) 交換二個(gè)元素 i (a1 alength | b1 | blengt | a=b) /;'roretu/ 錯(cuò)報(bào)則,法合不入輸 rurn ; else / ;1-ameepmet tni/ 素元換交
15、 elem-elmb-1; elem-1=em; return 1; nt an() i i,n,temp; lst myist(100);/ 00為度長(zhǎng)大最,表序順個(gè)一建創(chuàng) ;nlic fr(i=1;ien+1;i+) ;pmetnic mylit、listnser(i,tep); /)+i;1+)(htgneltsil、tslymi;1i(f/ 表序順印打 ;' )(leteg、tsimtc ;ldnetoc 置位得素元換交入輸/ ;,x tni ;yxnic/)s、silym( fi/ 素元個(gè)二這換交 or(i=1;iyst、litlegth();i+)/打印交換元素后得順序表
16、;' )i(meleteg、lymtuo coutdl; iny; /)s、tilym( i 素元個(gè)二這換交 for(i;imyist、lisegth();i+)/打印交換元素后得順序表 coutmlist、gtm(i)' ; ;detuc rturn 0; c : includoseam usin naespace std; clas ls private: int *ele; int issiz; 度長(zhǎng)大最表序順 ;htgne tni /順序表當(dāng)前長(zhǎng)度 pblic: 數(shù)函造構(gòu)/ ;)ezs tn(tsil st(); / 數(shù)函構(gòu)析/;)(htgnltsi tni/ 度長(zhǎng)際實(shí)
17、得表序順取獲 it litnr(int i,nt e); /插入一個(gè)元素 /;)i tni(teledtsil ni/ 素元得除刪回返,素元個(gè)一除刪;) tn(mlee tni/ 值素元回返,素元個(gè)一取獲 并合得表序順個(gè)兩現(xiàn)實(shí)/;)b tsil,a tsi(cuf tni eir; lis::ist(int siz)/ 數(shù)函造構(gòu) litsiz=size; egth=; elem=new inlistsize; list::is()/ 數(shù)函構(gòu)析 間空收回/;meeetled nt lt::listlngth() /獲取順序表得實(shí)際長(zhǎng)度 ;htgnel uter int s:listiner(in
18、t ,int e)/ 素元個(gè)一入插 )istsil=htgne( fi retur ; 滿已表序順 i ( | iengh+1) 法合不值 i/ ;0 ruter )1+hgnl=( ;htnelmele ele )-j;-ij;htl= tni( of elemj=eej1; 位一移后部全素元得面后 i 置位 elemi-=e; enth+; ;1 nruter nt list:lstdelete(int i)/ 素元得除刪回返,素元個(gè)一除刪 )0=htgnel( i ;0 ntr )hti | i( f reu 0; nt emp=lmi; )+j;tgnelj;1i ni( rof le
19、mj=elemj+1;/ 位一移前部全素元得面后 i 置位 ;htgel ;p nrter n list::tlem(in i)/ 值素元回返,素元個(gè)一取獲 )htgnli | 1i(fi ; nutr ;1ile rter in un(lit a,is b)/ 并合得表序順個(gè)兩現(xiàn)實(shí) ;a tn fr (int ;i、listlength();i) a=1; )j;)(htneltsil、aj;0=j ti(rof 置位得入插找尋/)jmee、aimle、b( fi ;ja;kr if(=1) ;il、b=htgnl、amele、/插,得大最是就iel、b到末尾 a、lngt+; /順序表當(dāng)前
20、長(zhǎng)度+1 ee fr(in k=、lngh1;k=;k-)/位置 i 后面得元素全部前移一位 ;kmee、a=+kmee、a a、ele=、elemi;/將 b、elmi插到位置 i 處 1+度長(zhǎng)前當(dāng)表序順/ ;+htnel、a ; nrute int main() int ,en,tmp; ;)001(1slym tsil 創(chuàng)建一個(gè)順序表,最大長(zhǎng)度為 1 /;)01(2ilym sil/ 0為度長(zhǎng)大最,2 表序順個(gè)一建創(chuàng) il;/輸入順序表 1 長(zhǎng)度 for(i=;ilen+;+)/輸入數(shù)據(jù) item; myst1、liser(,tmp); cinlen;/輸入順序表 2 長(zhǎng)度 據(jù)數(shù)入輸)i
21、;1+nel;1=i(rof citmp; ;)met,(tresnits、tilym /;)2siy,1tsily(cu 并合 2 表序順與 1 表序順將 r(i=;mlt1、litlengt()+1;i+)/結(jié)得后并合出輸果 cumlis1、getelm(i) ; ;ldnetuoc return ; d: incldeiotream usg namspae sd; cass lst prite: int *ele; 度長(zhǎng)大最表序順/ ;zisil ni n length; / 度長(zhǎng)前當(dāng)表序順pblic: 數(shù)函造構(gòu)/ ;)ezs tni(tsil lit();/ 數(shù)函構(gòu)析 int lste
22、nth();/ 度長(zhǎng)際實(shí)得表序順取獲/;) tni,i tni(trenitsi tni/ 素元個(gè)一入插 素元得除刪回返,素元個(gè)一除刪/ ;) ni(eteledtsil tni int getele(int i);/ 值素元回返,素元個(gè)一找查 in moe(int ,t b); ; lis::list( size) /構(gòu)造函數(shù) litsizesize; ;0=htnel ;zisttni wen=mel ist::list()/ 數(shù)函構(gòu)析 間空收回/;eleteled t ls:islh() /獲取順序表得實(shí)際長(zhǎng)度 ;htgnel ue int it::listner(int ,int e)
23、 /插入一個(gè)元素 )zissil=htgnl( fi ern 0;/ 滿已表序順 if (i1 | ilength+1) ;0 ner /值不合法 )1+htgnel=( fi elmlengte; ese or (i j=lng;ji-;j-) eem=lm1;/ 位一移后部全素元得面后 i 置位 elemi1=; ;+tgne ;1 nrte nt list:listdelee(nt i)/ 素元得除刪回返,素元個(gè)一除刪 f (lenh0) ; nuer )htgnei | 1i( i ; nter nt tem=elei1; )+;htnelj;1-ij tn( ro lemj=lej1
24、;/ 位一移前部全素元得面后 i 置位 ;htgnel reurn tmp; in list::getelem(int )/ 值素元回返,素元個(gè)一找查 if(1 leth) ; nrte retun eei; in li:mve(nt a,in b) ;,i tni 間空得度長(zhǎng)倍個(gè)一造構(gòu)先/;gnel*2tn np ti fr (i=;ilegh;i+) ;meep for (j0;jlengt;j+,i+) ;le=p /實(shí)際上指向得就是 el2 得數(shù)組 移左向則,=a 若/)=a( fi for(i=0;iet;i+) ee 給果結(jié)得后位 b 移左向?qū)?;b+p=mee 移右向則,1=a 若/)1=a( fi for(i=;ilength;i
溫馨提示
- 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年黨章黨史國(guó)史國(guó)情知識(shí)競(jìng)賽題庫(kù)及答案(共190題)
- 溶血三項(xiàng)在新生兒溶血檢測(cè)中的靈敏度及特異度分析
- 學(xué)院食材采購(gòu) 投標(biāo)方案(技術(shù)方案)
- 電商平臺(tái)具體業(yè)務(wù)
- 中醫(yī)護(hù)理學(xué)(第5版)課件 第一節(jié) 中藥方劑基本常識(shí)
- 電子商務(wù)安全交易規(guī)范手冊(cè)
- 公路建設(shè)項(xiàng)目工程可行性研究報(bào)告編制辦法
- 系統(tǒng)可行性分析包括哪些內(nèi)容
- 農(nóng)產(chǎn)品加工與綜合利用技術(shù)手冊(cè)
- 品牌建設(shè)與營(yíng)銷策略實(shí)施方案
- 人教版小學(xué)數(shù)學(xué)四年級(jí)下冊(cè)第一單元測(cè)試卷附答案(共9套)
- DL∕T 5210.6-2019 電力建設(shè)施工質(zhì)量驗(yàn)收規(guī)程 第6部分:調(diào)整試驗(yàn)
- 《材料分析測(cè)試技術(shù)》全套教學(xué)課件
- 消防水池 (有限空間)作業(yè)安全告知牌及警示標(biāo)志
- 船舶保險(xiǎn)投標(biāo)文件模板
- (完整版)形式發(fā)票模版(國(guó)際件通用)
- 施工二次結(jié)構(gòu)模板技術(shù)交底(一)
- 報(bào)關(guān)實(shí)務(wù)完整版課件全套ppt最全電子教案整書(shū)教案教學(xué)設(shè)計(jì)教學(xué)教程
- GM∕T 0036-2014 采用非接觸卡的門(mén)禁系統(tǒng)密碼應(yīng)用指南
- 幼兒園教學(xué)活動(dòng)、一日活動(dòng)安排表
- 部編版四年級(jí)道德與法治下冊(cè)第3課《當(dāng)沖突發(fā)生》優(yōu)秀課件(含視頻)
評(píng)論
0/150
提交評(píng)論