码迷,mamicode.com
首页 > 其他好文 > 详细

单链表的操作_约瑟夫环

时间:2015-11-30 02:27:14      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:数据结构单链表

node* JosephCircle_OP(node*& phead, size_t del) //约瑟夫环 优化写法  


{

assert(phead);

node* cur = phead, *prev = phead;

if(!del)   //对参数判断

{

printf("error parameter!");

}

while(cur->next != cur)

{

for(int i=1; i<del; i++)    //先找到删除节点的上一个节点//因为自己占一个节点,所以再减1

{

prev = cur;

cur = cur->next;

}

if(del!=1)

{

prev->next = cur->next;

free(cur);

}

else//删除不为1的情况

{

node* tmp = cur;

cur = cur->next;

free(tmp);

}

}

return cur;

}



单链表的操作_约瑟夫环

标签:数据结构单链表

原文地址:http://10767544.blog.51cto.com/10757544/1717969

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!