栈实现十进制转二进制
//进制转换
void bin(StackPtr P,int num)
{
while(num>0)
{
stack_push(P,num%2);
num/=2;
}
putchar(10);
}
约瑟夫环
//约瑟夫环功能
void ysf_fun(Looplink L,int num)
{
if(NULL==L||list_empty(L))
{
printf("不合法\n");
return ;
}
Looplink p=L;
int a=L->len;
for(int i=0;i<a-1;i++)
{
for(int j=0;j<num-1;j++)
{
p=p->next;
if(p==L)
{
p=p->next;
}
}
Looplink q=p->next;
if(q==L)
{
q=q->next;
}
p->next=q->next;
free(q);
q=NULL;
L->len--;
}
putchar(10);
}
思维导图