用順序表解決約瑟夫環(huán)問題_第1頁
用順序表解決約瑟夫環(huán)問題_第2頁
用順序表解決約瑟夫環(huán)問題_第3頁
用順序表解決約瑟夫環(huán)問題_第4頁
用順序表解決約瑟夫環(huán)問題_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、計(jì)算機(jī)科學(xué)與工程學(xué)院算法與數(shù)據(jù)結(jié)構(gòu)試驗(yàn)報告一專業(yè)班級試驗(yàn)地點(diǎn)學(xué)生學(xué)號指導(dǎo)教師學(xué)生姓名試驗(yàn)時間試驗(yàn)項(xiàng)目算法與數(shù)據(jù)結(jié)構(gòu)試驗(yàn)類別基礎(chǔ)性() 設(shè)計(jì)性() 綜合性() 其它( )試驗(yàn)?zāi)康募耙螅?) 掌握用VC+上機(jī)調(diào)試線性表的基本方法; (2)掌握順序表的存儲結(jié)構(gòu)以及基本運(yùn)算的實(shí)現(xiàn)。成 績 評 定 表類 別評 分 標(biāo) 準(zhǔn)分值得分合 計(jì)上機(jī)表現(xiàn)積極出勤、遵守紀(jì)律主動完成設(shè)計(jì)任務(wù)30分程序與報告程序代碼規(guī)范、功能正確報告詳實(shí)完整、體現(xiàn)收獲70分備注: 評閱教師: 日 期: 年 月 日試 驗(yàn) 內(nèi) 容 一、實(shí)驗(yàn)?zāi)康暮鸵?、實(shí)驗(yàn)?zāi)康模海?)掌握用VC+上機(jī)調(diào)試線性表的基本方法; (2)掌握順序表的存儲結(jié)構(gòu)以及

2、基本運(yùn)算的實(shí)現(xiàn)。2、實(shí)驗(yàn)內(nèi)容約瑟夫環(huán)問題:設(shè)編號為1,2,3,n的n(n>0)個人按順時針方向圍坐一圈,m為任意一個正整數(shù)。從第一個人開始順時針方向自1起順序報數(shù),報到m時停止并且報m的人出列,再從他的下一個人開始重新從1報數(shù),報到m時停止并且報m的人出列。如此下去,直到所有人全部出列為止。要求設(shè)計(jì)一個程序模擬此過程,對任意給定的m和n,求出出列編號序列。3、實(shí)驗(yàn)要求:用順序表實(shí)現(xiàn)。2、 設(shè)計(jì)分析根據(jù)實(shí)驗(yàn)要求,采用順序表來完成本次實(shí)驗(yàn)。實(shí)驗(yàn)中采用一維數(shù)組屁【】,先將n個人的編號存入到p0pn-1。從編號為1的人 (下標(biāo)t=0)開始循環(huán)報數(shù),數(shù)到m的人(下標(biāo)t=(t+m-1)%i)pt,輸

3、出并將其從數(shù)組中刪除(即將后面的元素前移一個位置),每次報數(shù)的起始位置就是上次報數(shù)的出列位置。反復(fù)執(zhí)行直到出列n個人為止。3、 源程序代碼#include<stdio.h>#include<stdlib.h>#include <iostream.h>#define MaxSize 100typedef struct Listint dataMaxSize;int length;*Sqlist;void InitList(Sqlist &L)L=(Sqlist)malloc(sizeof(Sqlist);L->length=0;void Crea

4、teList(Sqlist &L) int n; printf("您想輸入的人數(shù)為:");scanf("%d",&n);printf("最初的順序表為:n");for(int i=0;i<n;i+)L->datai=i+1;printf("%d ",L->datai);L->length=n;printf("n");void josephus(Sqlist &L,int m)int i,j,t;t=0; printf("最后的順序表為:&

5、quot;);for(i=L->length;i>=1;i-) t=(t+m-1)%i;printf("%d ",L->datat);for(j=t+1;j<=i-1;j+)L->dataj-1=L->dataj;printf("n");void main()int tt;Sqlist L;InitList( L);CreateList(L);printf("您想出列的序號為:");scanf("%d",&tt);josephus(L,tt);四、測試用例(盡量覆蓋所有分支) 1.當(dāng)n>m且n%m!=0時,即當(dāng)n不是m的倍數(shù)時:n=12,m=5時約瑟夫環(huán)的實(shí)驗(yàn)結(jié)果為2.當(dāng)n>m且n%m=0時,即當(dāng)n是m的倍數(shù)時:n=15,m=5時約瑟夫環(huán)的實(shí)驗(yàn)結(jié)果為3. 當(dāng)n<m且n%m=0時,即當(dāng)n是m的約數(shù)時:n=4,m=12時約瑟夫環(huán)的實(shí)驗(yàn)結(jié)果

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論