就是简单的链表操作,下面是实例。

#include<iostream>
#include<cstring>
#include<cstdio>
#include<cstdlib>
#include<cmath>
#include<algorithm>
using namespace std;
int tot;
struct node {int num;node() {num = ++tot;}node *next,*past;
};
int main() {int m,n;while(1) {scanf("%d%d",&n,&m);tot = 0;node *head = new node,*temp = head;node *tmp = head;for(int i = 1; i<n; i++) {temp -> next = new node;temp -> next -> past = temp;temp = temp -> next;}head -> past = temp;temp -> next = head;if(!m && !n) {break;}int to = 0;while(tmp -> next != tmp) {to ++;if(!(to % m)) {node *t = tmp;tmp -> past -> next = tmp -> next;tmp -> next -> past = tmp -> past;tmp = tmp -> next;delete t;} else {tmp = tmp -> next;}}printf("%d\n",tmp -> num);delete tmp;}return 0;
}

转载于:https://www.cnblogs.com/wenoi/p/9093938.html

链表 - 约瑟夫问题相关推荐

  1. java 单链表约瑟夫环_java循环单链表实现约瑟夫环问题

    package SingleLinkList; //节点类 class Node{ private int data; private Node next; public int getData() ...

  2. 数据结构一:链表(约瑟夫问题)

    一:约瑟夫问题 约瑟夫问题-循环链表典型应用 例题: n 个人围成一个圆圈,首先第 1 个人从 1 开始一个人一个人顺时针报数,报到第 m 个人,令其出列.然后再从下一 个人开始从 1 顺时针报数,报 ...

  3. 链表之单链表约瑟夫问题(一)

    package com.chenyu.zuo.linkedList;import com.chenyu.zuo.linkedList.RemoveMidNode.Node; /*** 环形单链表的约瑟 ...

  4. java 约瑟夫问题 链表_【链表问题】环形单链表约瑟夫问题

    前言 以专题的形式更新刷题贴,欢迎跟我一起学习刷题,相信我,你的坚持,绝对会有意想不到的收获.每道题会提供简单的解答,如果你有更优雅的做法,欢迎提供指点,谢谢 [题目描述] [要求] 输入:一个环形单 ...

  5. 约瑟夫环c语言计蒜客链表,约瑟夫环的故事 - osc_3n35hvex的个人空间 - OSCHINA - 中文开源技术交流社区...

    usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading. ...

  6. 链表之单链表约瑟夫问题(三)

    约瑟夫环(约瑟夫问题)是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围.从编号为k的人开始报数,数到m的那个人出列:他的下一个人又从1开始报数,数到m的那个人又出 ...

  7. 链表之单链表约瑟夫问题(二)

    约瑟夫环(约瑟夫问题)是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围.从编号为k的人开始报数,数到m的那个人出列:他的下一个人又从1开始报数,数到m的那个人又出 ...

  8. 数据结构--链表--约瑟夫环问题(单向循环链表)

    问题:一群人站成一个圆圈,从一个人开始报数,1, 2 ,...m,报到m的拉出去砍了,求被砍的顺序和最后一个活下来的. 利用单向循环链表实现 C++代码如下:(参考书籍:数据结构与算法实验指导书) # ...

  9. Algorithms_基础数据结构(04)_线性表之链表_单向循环链表约瑟夫环问题

    文章目录 大纲图 链表的经典面试题目 如何设计一个LRU缓存淘汰算法 约瑟夫问题 结构 分析 大纲图 链表的经典面试题目 如何设计一个LRU缓存淘汰算法 tip:单向链表 约瑟夫问题 N个人围成一圈, ...

最新文章

  1. 任务队列,消息队列和rpc的区别是什么?
  2. Apache ZooKeeper - 构建ZooKeeper源码环境及StandAlone模式下的服务端和客户端启动
  3. MYSQL专题-MySQL事务实现原理
  4. metamask中的import account的代码实现
  5. 爱迪生欺骗了世界! ----马云给雅虎员工演讲
  6. STL 之accumulate,adjacent_difference,inner_product,partial_sum
  7. 4.Dynamics CRM 数据数量限制更改
  8. C++:18---const关键字(附常量指针、指针常量、常量指针常量)
  9. seata 如何开启tcc事物_微服务分布式事务4种解决方案实战
  10. 我花600小时,调研30家银行,为你讲透银行数据架构,小白都能懂
  11. mysql必知必会_5天学完《MySQL必知必会》学习笔记之第四天
  12. 分享30个打动你的摄影师作品集网站
  13. java和线程相关的关键字有哪些_Java中有哪些机制来保证线程安全?synchronized关键字和volatile关键字...
  14. 创业的两种方式,你适合哪一种?
  15. bzoj2229: [Zjoi2011]最小割(最小割树)
  16. 数据--第23课 - 队列的优化实现
  17. SAS入门教程2---建立SAS数据集
  18. 计算机三角符号,word标尺倒三角 word倒三角符号
  19. 沟通CTBS,远程接入速度不再是困扰
  20. 【系统集成项目管理工程师】—三点估算

热门文章

  1. EXCHANGE 2010 DAG 实验总结
  2. Android普及入门
  3. 通过Image 对象动态装载图片,不可能立即得到图片的问题
  4. 折叠玻璃体球囊手术介绍
  5. jsp+tomcat程序helloworld
  6. pyflink的local模式实验记录
  7. GPU云服务器+tensorboard
  8. npm/cnpm install是啥意思
  9. hexo的yelee主题让文章呈现圆角效果
  10. 如何运行含spark的python脚本