欢迎来到天天文库
浏览记录
ID:59364624
大小:14.50 KB
页数:2页
时间:2020-09-04
《用循环链表解决约瑟夫环问题.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、//用循环链表解决约瑟夫环问题#includeusingnamespacestd;typedefstructLNode{intdate;//存放位数structLNode*next;//存放地址}LNode,*Linklist;voidmain(){Linklists,p,l,q;inti;l=newLNode;l->next=NULL;//建立空的带头链表p=l;intm,n;cout<<"请输入总人数:"<>m;for(i=1;i<=m;i++){s=newLNode;s->date=i;s->next=p->next;p->next=
2、s;p=p->next;}//长度为m带头点的单链表p->next=l->next;//循环链表,不带头结的cout<<"请输入出列序号"<>n;while(n<=1){cout<<"输入错误,请重新输入"<>n;}i=0;p=l;while(p->next!=p)//若循环链表中有两个及以上人则进行循环{i++;if(i%n==0)//依次报数,当为n的倍数,删除除结点{q=p->next;p->next=q->next;deleteq;}else//若不是n的倍数,指针后移p=p->next;}cout<<"最后剩第"<date
3、<<"个人";}
此文档下载收益归作者所有