#include<stdio.h>
#include<stdlib.h>
typedef int datatype;
typedef struct node
{
union{
datatype data;
int len;
};
struct node *s;
}zzy;
zzy *create()
{
zzy *l=(zzy*)malloc(sizeof(zzy));
l->len=0;
l->s=l;
return l;
}
int xunhuan(zzy *l,int n,int m)
{
zzy *q=l;
for(int i=2;i<=n;i++)
{
zzy *p=(zzy*)malloc(sizeof(zzy));
if(p==NULL)
{
printf("链表错误");
return -2;
}
p->data=0;
p->s=NULL;
p->data=1;
while(q->s != create())
{
q=q->s;
}
p->s=l;
q->s=p;
p->data=i;
l->len++;
}
zzy *b=create();
while(b->s!=NULL)
{
for(int k=1;k<=m;k++)
{
b->s;
}
printf("%d\t",b->data);
zzy *a=create();
for(int h=1;h<=m+2;h++)
{
a->s;
}
b->s=a;
free(b->s);
l->len--;
}
}
int main(int argc, const char *argv[])
{
int n,m;
zzy *l=create();
printf("请输入队列信息:");
scanf("%d%d",&n,&m);
xunhuan(l,n,m);
return 0;
}