




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
《算法與數據結構》課程設計報告姓名:班級:學號:指導教師:年月日課程設計綜合成績評定疑設計題目四一:煮約瑟夫生者忠死者游戲慧考核項目棉分值質A誼C恰得分書設計情況(艙共70分)趁設計工作量童與難度非20副設計工作量歪大與設計有目一定難度迫設計工作量逃與難度一般脊,基本達到梯了要求偽設計梨方案欺15棚設計方案正瞞確、合理工設計方案較弊正確、基本檢合理,但不萬是最優(yōu)戲設計完成情暢況助35虎完成了選題抬的設計內容喬,設計功能凝完整,相關夫算法設計正斜確,程序結淘果正確、直趁觀性好縣基本完成了繁選題的設計碧內容及主要料選題功能,意相關算法設餡計基本正確動,程序結果致正確妻設計報告(役共15分)豪報告組織結妖構及內容槍10洪內容組織及愁結構合理、屠內容充實、嘗層次清晰、惠圖表得當蓄內容組織及妥結構較合理洲、內容較充惜實、層次較捷清晰、圖表蔥應用基本得伐當三報告排版格格式唉5悠格式規(guī)范,項完全符合要國求丟格式基本規(guī)驅范,基本符宣合要求反設計態(tài)度(辜共15分)懶15勁設計態(tài)度認錯真、積極衛(wèi)設計態(tài)度比跨較認真荒綜合得分卵課程設計綜糕合成績(群折合為優(yōu)、鄰良、中、及勻格與不及格潤計浮)顏其它說明:目錄耐1.堆約瑟夫生者迅死者游戲金1獵1.1召項目簡介主1昌1.2悔設計思路余1桑1.3星數據結構蹤2臉1.4拘運行結果述2謝2載.土總結與分析反4附錄5賤附錄宵約瑟夫生者削死者游戲高程序源代碼仿5既1耀.挪約瑟夫生者死死者游戲桂1隔.1誼項目簡介汪約瑟夫生者太死者游戲闊的大意是泰:30個旅留客同乘一條摩船,因為嚴呀重超載,強加上風高浪疤大,威危險腐萬分;因此哪船長告訴乘隱客,只有將冠全船一半的肚旅客投入張海中周,其余人才苦能幸免遇難習。無奈,大捧家只得同意夏這種辦法,抓并議定錫30個令人蘆圍成一圈,維由第一個人悶開始,依次扭報數,數到大第9人,便攪把他投入大限海中,然后萬從他的下一闖個人數起,徒數到第9人替,再將他投翁入大海,如饞此循環(huán),直鼠到剩下15貪個乘客為止碧。問哪些位勸置是將被扔中下大海的位磚置。贈1得.2羞設計思路伏本游戲的數針學建模如下膛:左假設n個戚旅客酬排成一個環(huán)墳形,依次順易序編號1,養(yǎng)2,…,n修。從某個指火定的第1號腰開始,沿環(huán)金計數,每數括到第m個人曠就讓其出列虛,且從下一寄個人開始重城新計數,繼逼續(xù)進行下去銅。這個過程聲一直進行到有剩下k個旅諷客隔為止。敲本游戲的搏要求用戶輸徹入朗的過內容攏包括邀:咬1.旅客僅的個數,也蹤就是n的值趣;嬸2.產離開斤旅客薄的間隔焰數,從也就是m的企值孫;落3.擊所有諒旅客阻的序號扒作為一組數耽據東要求概存放在某種卷數據結構中飯。演本游戲鑼要求輸出的慎內容是元包括漲1.店離開足旅客蹄的序號;嫂2.剩余鈔旅客的聯序號;馳所以,根據腹上面流的模型解分析服及紡輸入輸出參果數改分析起,隙可以定義一屈種數據結構順后進行算法奉實現。奴1敢.3雕數據結構芝為了解決這班一問題,可庫以用長度為字30的數組裝作為線性存丸儲結構,并曾把該數組看突成是一個首廣尾相接的環(huán)屑形結構,那肆么每投入大衛(wèi)海一個乘客評,就要在該階數組的相應肥位置做一個壺刪除標記,橡該單元以后急就不再作為件計數單元。反這樣做不僅潮算法較為復啄雜,而且效拜率低,還要苗移動大量的拼元素。用單朗循環(huán)鏈表解送決這一問題交,實現的方它法相對要簡朱單得多。首存先要定義鏈搶表結點,單稻循環(huán)鏈表的通結點結構與丸一般的結點牧結構完全相舅同,只是數難據域用一個明整數來表示鞋位置;然后堪將它們組成乞具有30個芳結點的單循城環(huán)鏈表。接謹下來從位置稼為1的結點嘉開始數,數菠到第8個結希點,就將下責一個結點從珍循環(huán)鏈表中跑刪去,然后那再從刪去結每點的下一個暈結點開始數邁起,數到第瘦8后個結點,再碑將其下一個關結點刪去,稿如此進行下桌去,直到剩費下15個結盯點為止。槽為了不失一捉般性,將3餅0改為一個足任意輸入的會正整數n,失而報數上限違(原為9)閑也為一個任讀選的正整數鏡k。這樣該訴算法描述如穩(wěn)下:雁(1)創(chuàng)偏建含有n個升結點的單循親環(huán)鏈表;納(2)生盒著與死者的謠選擇:凳p指向鏈表舍的第一個結篩點,初始i辨置為1;頃while統(tǒng)(i<=n至/2)歪//刪除一釣半的結點文{從p秀指向的結點憤沿鏈前進k饒-1步;關婆刪除第k個僅結點(q所蓮指向的結點蜘);尾牧p指向q的冤下一個結點嫂;庫鬼輸出其位置公q->da車ta;選偏i自增1;}殼(3)輸司出所有生者俊的位置。奉1核.懂4耍運行懶結果氧3賢.扁總結與分析都此程序目前京的缺點在于修,結點密碼役數據類型定構義的存儲類由型是int雅型,不能超鼓過-214完74836辰48~21以47483煩648,一粗旦超過則程生序輸出結果赴有誤,另一直個缺點就是棵程序運行當理中,一旦中察途輸入出現訂錯誤,則無爆法返回,必罷須將當前操餐作結束等到壤下個主函數蜜的循環(huán)開始不,或者直接疤退出重新運估行此程序。瀉優(yōu)點則在于涂程序運行速粘度較快,不粉會出現輸出塵結果有誤的歡問題巨經過這次集恭中上機的實保驗,從開始通選題到自己著上手還是編玻寫程序的過鴉程中,我學嬌會了很多的羅東西,以前侵對C語言的核知識和算法種總是模棱兩磚可的,經過施這次練習,嘉在某些方面壞上還是經過炮了加強的訓辟練。此次,區(qū)實驗,從開泳始構建循環(huán)蹈鏈表然后實傾現約瑟夫環(huán)灰功能的過程食中,中途也屋遇見一些問械題,但都逐隱一克服,相縣信在這次的病實驗中提升依了較大的自驕身動手實踐假能力。類學好數據結瓶構!附錄淚附錄刑1拋約瑟夫生者煉死者游戲程非序源代碼盜LinkL組istI憶nitRi舍ng(in碰tn,弱LinkL主istR院)冬兇//抬尾插入法建陰立單循環(huán)鏈梢表函數{瓦闖ListN鳳ode*哈p,*q汪;田門int引I奪;銳錫R=q=(座LinkN索ode*勇)mall乞oc(si歇zeof(丈LinkN頂ode))欺;訪鏟for(i哀=1;i<托n;i++廚){漏估命p=(Li叨nkNod掘e*)m黃alloc鄭(size切of(Li享nkNod宗e));段全雕q->da句ta=擾i;租變予q->ne史xt=p;化口隸q=p;}客語p->da塊ta=n;儉克p->ne叼xt=R;R=p;秩旅retur噸nR;}晶LinkL竭istD淡elete慢Death著(int京n,in抵tk,浸LinkL半istR病)越鵲//生者揭與死者的選博擇{臨鈴inti要,j;塞象ListN領ode*悉p,*q貧;p=R;根柏for(i罷=1;i蒜<n/2;鋼i++)傘{側江//刪除一完半結點辯勤閘for(j寺=1;j幸<k-1;挺j++)攔稱//沿鏈前匠進k-1步撲毫扮本p=p->爐next;史情懷q=p->補next;簽歌音p->ne發(fā)xt=q-績>next胃;蘭歉悠print跑f(筆“鴉%4d飾”劇,q->思data)賴;賢缺厭free(鋪q);}世R=p;鑰retur存nR;}盼救void朽OutRi攪ng(in率tn,錫LinkL旦istR扛){柔培涌者/漸/輸出所有前生者挨挎梯int秧i;販魚千LinkN某ode*隙p;棄虎峰p=R;索菌繁for(i鞋=1;i<夜=n/2;捧i++,仰p=p-傭>next胳){藝跳樣紐print眉f(弊“齊%4d芬”致,p->惹data)}}妙有了上述算笛法分析和設爬計之后,實達現就比較簡予單了。首先升要定義一個汽鏈表結構類斯型,然后編企寫一個主函春數調用上面許已定義好的臟函數即可。還主函數的源辱程序如下:榴#incl鵲ude<s鼻tdio.炎h>劃#incl魯ude<s碼tdlib她.h>饑typed滋efst愁ruct小node{籮盲intd擾ata;莫鉤struc賠tnod夢e*n塑ext;僅}List騎Node;容typed候efLi獨stNod脖e*L節(jié)inkLi霸st;巷void胳main(鞋){斯蜻LinkL罪istR廢;底菠intn鐮,k;踏杯LinkL味istI淘nitRi材ng(in帶tn,好LinkL洞istR膚);硬魄LinkL鳴istD客elete奪Dea
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 有機化學原料的廢棄物處理與資源化考核試卷
- 智能服務機器人技術創(chuàng)新考核試卷
- 機械式停車設備故障預防與診斷技巧考核試卷
- 木材采運的數字化轉型與智能化考核試卷
- 中介居間費合同范本
- 房主房子出租合同范本
- 維修農村管道合同范本
- 畜牧產品加工與供應合作協議
- 物聯網技術應用研發(fā)生產合同書
- 電信運營商合作協議具體內容
- 廣東義務教育標準化學校
- 煤質化驗員測試題(附參考答案)
- 全電發(fā)票樣式
- (完整版)供應商審核表
- 饅頭工藝流程圖
- (二次供水單位)生活飲用水衛(wèi)生許可證延續(xù)申請表
- 鈉電池正極材料PPT
- 體能訓練概論(NSCA)
- 青島版三年級數學下冊《美麗的街景》教學課件7
- 液壓傳動全套ppt課件(完整版)
- 內部控制五要素圖解
評論
0/150
提交評論