Fork me on GitHub
  2014年3月9日
摘要: 问题描述n个人围成一圈,号码为1-n,从1开始报数,报到2的退出,剩下的继续从1开始报数,求最后一个人的号码。算法分析最直观的算法是用循环链表模拟。从首节点开始,不断删除第二个节点,直到只剩一个节点为止。时间复杂度是O(2n).typedef struct josephusnode{ struct josephusnode *next; int item;}jnode;int listjosephus(jnode *head){ jnode *n = head; while(n->next!=n){ jnode *t = n->next; n... 阅读全文
posted @ 2014-03-09 14:33 coderkian 阅读(274) 评论(0) 推荐(0) 编辑


作者:coderkian
出处:http://www.cnblogs.com/coderkian/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。