约瑟夫环算法
来源:互联网 发布:项目数据分析 编辑:程序博客网 时间:2024/05/22 03:30
建立了8个人从第一个数每数到3则出局
#include <stdio.h>#include <stdlib.h>#include<malloc.h>#include<string.h>//定义一个节点结构体typedef struct node{int data;struct node *next;}Node;//建立一个约瑟夫循环链表Node *Create_Link(int n){ Node *head,*p,*q; int i; p=(Node *)malloc(sizeof(Node)); //注意赋值 否则是个垃圾数据 p->data=1; p->next=NULL; head=p; for(i=2;i<=n;i++){ q=(Node *)malloc(sizeof(Node)); q->data=i; p->next=q; p=q; } p->next=head; return head;}// 约瑟夫环// 从第m个人开始报数(1<=m<=创建链表的那个参数n),数到n的那个人被杀死void jesefu(Node *head,int m,int n){ Node *p,*q; int i=0;//相隔从i到n之前的距离 p=head; //找到第m个人 while(p->data!=m){ p=p->next; } //杀死报道n的人 while(p->next!=p){ for(i=0;i<n-1;i++){ q=p; p=p->next; } printf("出局的顺序%d\n",p->data); q->next=p->next; free(p); p=q->next; } printf("最后剩下的为%d\n",p->data); free(p);}int main(){ Node * head=Create_Link(8); jesefu(head,1,3); system("pause"); return 0;}
阅读全文
0 0
- 约瑟夫环算法
- 约瑟夫环的算法
- 约瑟夫环算法
- 约瑟夫环算法
- 约瑟夫环算法
- 趣味算法-约瑟夫环
- 约瑟夫环算法
- 【经典算法】约瑟夫环
- 【算法设计】约瑟夫环
- 算法之约瑟夫环
- 约瑟夫环算法问题
- 约瑟夫环算法
- 算法----约瑟夫环问题
- 算法 约瑟夫环问题
- 【算法设计】约瑟夫环
- 约瑟夫环:递归算法
- [算法]约瑟夫环问题
- 约瑟夫环算法研究
- bzoj 1001: [BeiJing2006]狼抓兔子 对偶图最短路-(最小割)
- 为什么大家渐渐从QQ改成用微信了?
- 检测 手机usb接入的设备
- 自动监测内存泄漏
- 为什么那些每三年跳一次槽的人越跳越好?
- 约瑟夫环算法
- 如何让 Xcode 在读写上提速100倍?
- HTML问题,a href =" "和 a href ="#"这两个有什么区别?
- 行走在消失中的5种编程语言,Object-C在列,你怎么看?
- 嫁给程序员,有这10个理由就够了。
- iOS 编译过程的原理和应用
- iOS OC语言: Block底层实现原理
- 程序员经常读错的单词有这些
- 程序员们的工资到底有多高?