用循环链表的方式实现约瑟夫环,下面是部分代码,
typedef struct node
{
int key;
int seatnum;
struct node *next;
}node,*linklist;
void createlist(linklist&l,int n)
{
l=(linklist)malloc(sizeof(node));
l->next=NULL;
linklist q=l;
for(int i=0;i<n;i++)
{
node *p=(linklist)malloc(sizeof(node));
p->seatnum=i+1;
int m;
cout<<"please input the "<<i+1<<"th key"<<endl;
cin>>m;
p->key=m;
p->next=l->next;
q->next=p;
q=p;
}
}