1、约瑟夫环
//约瑟夫问题
void list_joseph(LoopLink L)
{
//判断逻辑
if(NULL==L||list_empty(L))
{
printf("解决失败\n");
}
LoopLink q=L;
while(1)
{
for(int i=1;i<3;i++)
{
if(q->next==L)
{
q=q->next->next;
}
else
{
q=q->next;
}
}
LoopLink P=NULL;
if(q->next==L)
{
P=L->next;
}
else
{
P=q->next;
}
printf("%d\n",P->data);
q->next=P->next;
free(P);
P=NULL;
L->len--;
if(L->len==0)
{
break;
}
}
}
2、二进制