循环单链表实现约瑟夫环
来源:互联网 发布:关口知宏上海 编辑:程序博客网 时间:2024/05/21 22:34
n个人围成一圈报数,数到3的人出局:
//约瑟夫环//循环链表实现#include<stdio.h>#include<stdlib.h>typedef int elemtype;typedef struct node{int num; //序号 //elemtype data; struct node *next;}*linklist;void Joseph(int n);void Joseph(int n){linklist p, q, s;elemtype e;int countSum = n;//总计数int count = 1;s = (linklist)malloc(sizeof(node));//第一个节点if (!s) exit(0);s->num = 1;//s->data = 1;s->next = NULL;p = s; //q = s;for (int i = 2; i <= n; i++){q = (linklist)malloc(sizeof(node));q->num = i;//q->data = 1;p->next = q;q->next = NULL;p = q;}p->next = s;p = s->next;q = s;while (countSum> 2){p = p->next;q = q->next;count++;if (count == 2){q->next = p->next;e = p->num;printf("kill %d\n",e);free(p);p = q->next;count = 0;countSum--;}//if}//whileprintf("remain:\n");printf("%d->",p->num);//输出剩下的第1个元素p = p->next;printf("%d->", p->num);//输出剩下的第2个元素}void main(){int n;printf("输入参加人数:");scanf("%d",&n);Joseph(n);system("pause");}
0 0
- 循环单链表实现约瑟夫环
- 约瑟夫环(约瑟夫问题) 采用循环单链表实现
- 约瑟夫环程序C++循环单链表实现
- java循环单链表实现约瑟夫环问题
- 采用循环单链表实现约瑟夫环
- 循环单链表实现约瑟夫环问题
- 用循环单链表实现约瑟夫环(不含头结点)
- Josephus(约瑟夫环问题)循环单链表c语句实现!
- 约瑟夫环问题(循环单链表的实现)
- 用循环单链表实现约瑟夫环(c语言)
- 约瑟夫环_循环单链表
- 约瑟夫环的循环链表实现
- 循环链表实现约瑟夫环
- 循环链表实现约瑟夫环
- 循环链表实现 约瑟夫环
- 循环链表实现约瑟夫环
- Java循环链表实现约瑟夫环
- 循环链表 约瑟夫环问题实现
- windows在ISR中不能睡眠的原因
- Android Studio实现代码混淆
- 浅谈sqlserver2008备份与还原的方法一
- 天声人語 20150722
- Html学习笔记4
- 循环单链表实现约瑟夫环
- Android三种实现定时器的方法
- OpenGL 纹理本质
- 认识HTML5的WebSocket通讯
- 日经春秋 20150722
- gnuradio 使用usrpn200的部分设置
- 深入剖析Java中的装箱和拆箱
- android手机获取手机号
- 014.@property 合成存取方法