bllt.net
当前位置:首页 >> 约瑟夫环 C语言链表 >>

约瑟夫环 C语言链表

C语言的约瑟夫环问题,利用单循环链表,代码如下: #include //利用单循环链表!!!!!#include#includetypedef int ElemType;typedef struct SingleNode{ ElemType data; struct SingleNode *next;}SLL,*LinkList;int main(){ SLL *head ,*us...

解决问题的核心步骤:(程序的基本算法) ⒈建立一个具有n个链结点,无头结点的循环链表; ⒉确定第1个报数人的位置; ⒊不断地从链表中删除链结点,直到链表为空。 void JOSEPHUS(int n,int k,int m) //n为总人数,k为第一个开始报数的人,m为出列...

问题还不少,指针变量p,q在主函数中都没有值,如何运算,注意各个函数中定义的变量都是局部变量,只能在本函数中可见(使用),AddToL()函数中的p和Delete()中的q在main()中不可见,就是不能共用。main()函数中的语句: scanf("%d",&(p->code));...

//用数组实现约瑟夫环 #include #define maxN 100 int main(){ int Joself_k(int,int,int); int n,k,m; printf("输入总人数n,开始报数号k,出列号码m:\n"); scanf("%d%d%d",&n,&k,&m); Joself_k(n,k,m); return 0; } int Joself_k(int n,int k,i...

/* 不知道要哪种,约瑟夫环用数组的话可以直接用数学得到答案, http://blog.163.com/seeker_forever/blog/static/16323893820107535243739/ 下面是总共n个人,每次数到m的人出列,出列顺序保存在L中 */ void find(int n.int m,int* L) { int n...

前面创建的双向循环链表没有问题 clock变量是什么意思,uclock是什么意思,等等 感觉你的代码思路有点乱,漏洞很多,能不能注释一下你的代码,编写代码习惯不太好 约瑟夫环的游戏的具体要求是什么

用指针实现的循环单链表。 #include using namespace std; struct Node { int m,num;//m是密码,num是他的编号 Node *next; }; Node *head; int M,N; void Build() { cin>>N>>M; Node *p=head; for(int i=1;i>tmp->m; tmp->num=i; if(i==1)head=...

这个就完全可以.. #include #include typedef struct LNode{ int code; int num; LNode *next; }LNode,*Linklist; void Create(Linklist &L,int &m,int &n) { //根据人数创建链表 int t;LNode *p,*q; printf("Please input the largest number m...

数学原理:http://zh.wikipedia.org/wiki/%E7%BA%A6%E7%91%9F%E5%A4%AB%E6%96%AF%E9%97%AE%E9%A2%98 有递归和迭代两个程序,选一个即可。 #include int Josephus2(int n, int k) {if (n == 1) return 0;return (Josephus2(n - 1, k) + k ) % n;}...

这没啥高手的,人称入门题目,也就是说,会做这个基本就可以用C做一些东西了。这是我以前写的,从博客上面搞下来的,你试试看能不能运行,我当时似乎是运行过了的。不过这个不是用链表做的,用数组做的,你结合链表的语法把他改一下就行了,很简...

网站首页 | 网站地图
All rights reserved Powered by www.bllt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com