息壤网站打不开了,wordpress调整字号,《新闻联播》 今天,网站建设岗位叫什么今天讲的一道习题是很经典的约瑟夫环问题#xff0c;其实lz对于链表的某些操作还不是太懂#xff0c;所以在程序中有些地方还不太看得懂#xff0c;这里借鉴的网上的做法#xff0c;还请大牛能够解答我的疑惑#xff0c;谢谢#xff01; 标题#xff1a;约瑟夫环 说明其实lz对于链表的某些操作还不是太懂所以在程序中有些地方还不太看得懂这里借鉴的网上的做法还请大牛能够解答我的疑惑谢谢 标题约瑟夫环 说明约瑟夫环是这么一个问题已知n个人编号1,2。。。n围坐在圆桌周围。从编号为k的人开始报数数到m的人出列他的下一个人又从1开始报数数到m的人出列直到所有人都出列。 struct node{ int num; node *next; }; node *creat(int n)//构建一个链表即head-》1-》2-》。。。-》n最后n又回到head{ node *p,*q,*headNULL; for(int i0;in;i) { pnew node; p-numi; if(headNULL) { headp; //head用0来表示 } else { q-nextp; } qp; } p-nexthead; //p变为最后一个节点 return p;} int main() { int n,k,m;//n为总人数k为开始报数的人的序号m为报到的需要出列的数 cinnkm; node *l,*q; lcreat(n);//l即为生成的链表 ql;ll-next; for(int i1;ik;i)//这步其实不太理解是什么意思 { ql; ll-next; } while(l-next!l)//l-nextl表示只剩下最后一个人了 { for(int i1;im;i)//如果还没有报到则依次遍历 { ql; ll-next; } coutl-num-;//输出出列的人的序号 q-nextl-next;//将这个人的位置删去 delete l; lq-next;//用出列的下一个人来代替出列的人 } coutl-num; delete l; }转载于:https://www.cnblogs.com/elninohjh/p/4642292.html