单循环链表解决约瑟夫问题.doc

上传人:m**** 文档编号:559826645 上传时间:2022-08-21 格式:DOC 页数:4 大小:67KB
返回 下载 相关 举报
单循环链表解决约瑟夫问题.doc_第1页
第1页 / 共4页
单循环链表解决约瑟夫问题.doc_第2页
第2页 / 共4页
单循环链表解决约瑟夫问题.doc_第3页
第3页 / 共4页
单循环链表解决约瑟夫问题.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《单循环链表解决约瑟夫问题.doc》由会员分享,可在线阅读,更多相关《单循环链表解决约瑟夫问题.doc(4页珍藏版)》请在金锄头文库上搜索。

1、/用单循环链表解决约瑟夫问题#include using namespace std;typedef struct Lnodeint data;Lnode *next;Lnode;class JosephusCirclepublic:void creat_list();void Josephus();private:int n;int s;int m;Lnode *head;void JosephusCircle:creat_list() /初始化cout请依次输入,约瑟夫圈人数、报数起始位置、报几个数:nsm;if(m=0) cout报数的个数不许为0!; coutnext=head; ta

2、il=head;for(int i=0;idata=(i+1);tail-next=p;tail=p;p-next=head-next;void JosephusCircle:Josephus()Lnode *p=head-next;Lnode *q=head; /q指针紧随其后int j=1;while (j!=s) /找到报数起点p=p-next;q=q-next;+j;while (p!=q)for(int i=0;inext; q=q-next;coutdatanext; /删除节点 q-next=p;coutdata; /输出最后一个出圈人编号void main()JosephusCircle Jose;Jose.creat_list();cout出圈顺序为:endl;Jose.Josephus();coutendl;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号