鱼C论坛

 找回密码
 立即注册
查看: 4724|回复: 16

[技术交流] 发表一下学习约瑟夫环的心得

[复制链接]
发表于 2016-7-6 14:44:56 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 DAY 于 2016-7-8 18:13 编辑
  1. //约瑟夫环代码;
  2. #include<cstdio>
  3. #include<cstdlib>

  4. typedef struct Node{
  5.         int data;
  6.         struct Node *next;
  7. };

  8. Node *create(const int n){
  9.         Node *head,*p;
  10.         head=(Node *)malloc(sizeof(Node));
  11.         p=head;
  12.         for(int i=1;i<=n;++i){
  13.                 Node *s=(Node *)malloc(sizeof(Node));
  14.                 s->data=i;
  15.                 p->next=s;
  16.                 s->next=head->next;
  17.                 p=s;
  18.         }
  19.         free(head);
  20.         return p->next;
  21. }

  22. int main()
  23. {
  24.         int n,m;
  25.         scanf("%d%d",&n,&m);
  26.         Node *rear;
  27.         rear=create(n);
  28.         while(rear->next!=rear){
  29.                 for(int i=1;i<m-1;++i)rear=rear->next;
  30.                 printf("%d-->",rear->next->data);
  31.                 rear->next=rear->next->next;
  32.                 rear=rear->next;
  33.         }
  34.         printf("%d\n",rear->data);
  35.         return 0;
  36. }
复制代码




下面是java版约瑟夫环代码:
游客,如果您要查看本帖隐藏内容请回复

评分

参与人数 1荣誉 +3 鱼币 +3 贡献 +3 收起 理由
康小泡 + 3 + 3 + 3 热爱鱼C^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-7-7 09:14:37 From FishC Mobile | 显示全部楼层
谢谢分享
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

头像被屏蔽
发表于 2016-7-22 03:47:54 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-7-23 17:08:45 | 显示全部楼层
收藏了,开学学习结构算法
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-7-25 11:10:03 | 显示全部楼层
多谢分享
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-10-10 09:25:15 From FishC Mobile | 显示全部楼层
看看java
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-10-12 13:27:14 | 显示全部楼层
看看java
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-10-14 21:42:16 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-10-15 08:45:13 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-10-15 21:57:27 | 显示全部楼层
辛苦了,谢谢分享
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-11-30 15:34:52 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-12-1 00:15:10 | 显示全部楼层
学习学习。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-12-2 08:31:32 | 显示全部楼层
学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-12-15 13:07:23 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-12-16 19:53:10 | 显示全部楼层
加油
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-11-4 23:21:05 | 显示全部楼层
jav
aa
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-22 20:04:53 | 显示全部楼层
小甲鱼视频中为什么m要%=n呢,
源代码:
int n = 40;
    int m = 3;
    int i;
    node *p = create(n);
    node *temp;
    m = n%m;
    while(p != p->next)
    {
        for (i = 0; i < m-1; ++i) { //问题在这,还要减一
            p = p->next;
        }
        printf("%d->",p->next->date);
        temp = p->next;
        p->next = temp->next;
        free(temp);
        p = p->next;
    }
    printf("%d\n",p->date);
    return 0;
想不明白求大神指导
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-4 18:21

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表