已知n个人(以编号1,2,…,n分别表示)围坐在一张圆桌周围。从编号为1的人从1开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;以此规律重复直到圆桌周围的人只剩一人。求出列顺序,及最终胜出的人。
请完成函数部分,通过循环链表的数据结构实现约瑟夫环问题的算法。(C++
#include
using namespace std;
#define OK 1
#define ERROR 0
typedef int ElemType;
typedef int Status;
//定义单链表节点
typedef struct LNode{
ElemType data;
struct LNode *next;
}LNode, *LinkList;
//函数声明:n为总人数,m表示数到m的人出列
void josephus(int n, int m);
int main(){
int n,m;
cin>>n>>m;
josephus(n,m);
return 0;
}
void josephus(int n, int m){ //函数实现部分
}
```)