日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【数据结构作业—01】用单循环链表解决约瑟夫问题

發布時間:2024/6/21 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【数据结构作业—01】用单循环链表解决约瑟夫问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

實驗作業一:線性表(鏈表)

1.?用單循環鏈表解決約瑟夫問題。

問題描述:

一個旅行社要從n個旅客中選出一名旅客,為他提供免費的環球旅行服務。旅行社安排這些旅客圍成一個圓圈,從帽子中取出一張紙條,用上面寫的正整數m(<n)作為報數值。游戲進行時,從第s個人開始按順時針方向自1開始順序報數,報到m時停止報數,報m的人被淘汰出列,然后從他順時針方向上的下一個人開始重新報數,如此下去,直到圓圈中只剩下一個人,這個最后的幸存者就是游戲的勝利者,將得到免費旅行的獎勵。其中數據結構采用單循環鏈表。

解決方案要求:

輸入參數:n、m、s

輸出參數:n個人的淘汰序列

參考樣例:

?

?

代碼:

1 #include "stdlib.h" 2 #include "stdio.h" 3 #include <iostream> 4 using namespace std; 5 6 typedef int datatype; 7 8 typedef struct node { 9 datatype data; 10 struct node *next; 11 }node, *LinkList; 12 13 void Inite(LinkList &first, int n) { 14 first = (node*)malloc(sizeof(node)); //注意此處,不可以直接分配長度為n*sizeof(node)的空間,因為這里只可以給頭節點分配,如果分配多了也沒用 15 node *p = first, *q; 16 //first->data = 1; 17 //cout << first->data; 18 for(int i = 0; i < n - 1; i++) { 19 p->data = i + 1; 20 q = (node*)malloc(sizeof(node)); 21 //cout << "Number " << i+1 << " p->data " << p->data << endl; 22 p -> next = q; 23 p = q; 24 } 25 p -> data = n; 26 p -> next = first; 27 //cout << "Number " << n << " p->data " << p->data << endl; 28 } 29 30 void Josephus(LinkList &first, int m, int s) { 31 cout << "******** Solve Josephus Problem ********" << endl; 32 33 node *nowPoint = first, *prePoint = first; 34 if (s > 1) { 35 for (int i = 0; i < s - 1; i++) { 36 prePoint = nowPoint; 37 nowPoint = nowPoint -> next; 38 //cout << "NUMBER " << i + 1 << " prePoint " << prePoint->data << endl; 39 //cout << "NUMBER " << i + 1 << " nowPoint " << nowPoint->data << endl; 40 } 41 } 42 else if(s == 1) { 43 while(prePoint -> next != nowPoint) 44 prePoint = prePoint -> next; 45 } 46 else { 47 printf("PLEASE ENTER AN S WHICH BIGGER THAN 4 !"); 48 } 49 while (nowPoint -> next != nowPoint) { 50 for (int i = 0; i < m - 1; i++) { 51 prePoint = nowPoint; 52 nowPoint = nowPoint -> next; 53 //cout << "NUMBER " << i + 1 << " prePoint " << prePoint->data << endl; 54 //cout << "NUMBER " << i + 1 << " nowPoint " << nowPoint->data << endl; 55 } 56 prePoint -> next = nowPoint -> next; 57 cout << "Number " << nowPoint -> data << " is out" << endl; 58 free(nowPoint); 59 nowPoint = prePoint -> next; 60 } 61 cout << "Number " << nowPoint -> data << " is out" << endl; 62 cout << "****************** END *****************" << endl; 63 } 64 65 int main() { 66 int n, m, s; 67 LinkList first; 68 69 cout << "Enter n:" << endl; 70 cin >> n; 71 cout << "Enter m:" << endl; 72 cin >> m; 73 cout << "Enter s:" << endl; 74 cin >> s; 75 76 Inite(first, n); 77 Josephus(first, m, s); 78 79 return 0; 80 }

?

轉載于:https://www.cnblogs.com/QingHuan/p/4947244.html

總結

以上是生活随笔為你收集整理的【数据结构作业—01】用单循环链表解决约瑟夫问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产日产精品一区二区三区四区 | 玖玖色资源 | 日韩中文在线字幕 | 黄色动漫在线观看 | 久久精品天堂 | 精品黄色片 | 美女国产网站 | 播放灌醉水嫩大学生国内精品 | 欧美午夜精品久久久久久蜜 | 青青草视频偷拍 | 国产一区二区精品在线 | 91午夜精品亚洲一区二区三区 | 国产精品美女在线观看 | 可以看污的网站 | 成人性生生活性生交3 | 动漫女生光屁股 | 一区二区免费播放 | 小黄网站在线观看 | 亚洲一区在线免费 | 日韩欧美二区 | 成人国产在线观看 | 久久视频热 | 亚洲日本香蕉 | 久久国产精品久久久久久 | 韩国毛片一区二区 | 国产女人在线视频 | 日韩成人av在线 | 免费视频网站www | 国内福利视频 | 天天操天天插天天干 | 久久久久99精品成人片三人毛片 | 久久的色偷偷 | 亚洲欧美日韩一区二区三区在线观看 | 97人妻精品视频一区 | 亚洲精品日韩精品 | 欧美丰满老妇熟乱xxxxyyy | 蜜臀久久99精品久久久画质超高清 | 韩国甜性涩爱 | 午夜影院免费体验区 | 日韩中文字幕视频 | av永久免费 | 亚洲一区在线视频观看 | 日韩中文字幕影院 | 国产福利片在线 | 人妻精品久久久久中文字幕 | 欧美99久久精品乱码影视 | 美女网站免费观看 | 成人免费无码大片a毛片抽搐色欲 | 国产精品久久久久影院 | 国产羞羞 | 亚洲欧美一区二区精品久久久 | 国产精品视频免费 | 国产人妻一区二区 | 国产一级二级在线 | 日本免费在线视频观看 | 你懂的国产 | 日韩欧美手机在线 | 搞黄视频在线观看 | 久综合网 | 国产精品久久久久9999爆乳 | 色悠悠视频| 色眯眯网 | 在线观看国产一级片 | 九九热re | 国产美女一区二区三区 | 狠狠干狠狠干狠狠干 | 精品国产网站 | 日韩成人午夜影院 | 精品久久久久久久无码 | 在线看片一区二区 | 日韩一区二区三区精品视频 | 亚洲精品乱码久久久久久麻豆不卡 | 日韩午夜av| 熟睡人妻被讨厌的公侵犯 | 91av网址 | 毛片啪啪啪 | 中文字字幕在线中文乱码电影 | www.毛片com| 成人在线免费小视频 | 茄子视频懂你更多在线观看 | 麻豆md0049免费| 深夜福利在线免费观看 | 国产精品91久久久 | 东北高大丰满bbbbzbbb | 久久激情婷婷 | 91官网在线 | 精品无码国产av一区二区三区 | 黄色在线免费播放 | 日韩欧美少妇 | 中国字幕av | 女性爱爱视频 | 欧美a v在线播放 | 国产精选视频在线观看 | 久久爱99 | 99精品福利视频 | 91精品国产99 | 波多野av在线 | 国产吃瓜黑料一区二区 | 亚洲精品在线免费 |