随笔分类 - 链表
摘要:实现把单循环链表例置算法的思考过程:第一:需要保存临时数据的变量,不然无法完成倒置。第二:要完成倒置就需要遍列,又需要一个变量第三:用于得到最后的结果,这个暂时考虑也需要一个变量单个节点的倒置是本身,1->1两个节点的倒置1->2,可以参考两个数的交换,这就需要临时变量了 p=head; 1q=head->next; 2s =p ; 1q->next = s;2->1p->next =q; 1->2->1三个节点。。。。。。。//这样得到了头指针*p=head;//2。完成遍列的代码 *q=head->next;while(q!=head)
阅读全文
摘要:约瑟夫环问题可以简单的使用数组的方式实现,但是现在我使用循环链表的方法来实现,因为上午看到一道面试题规定使用循环链表解决约瑟夫环问题。 什么是约瑟夫环? “约瑟夫环是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。”(百度百科中的解决办法列出了很多,可以看到循环链表并不是最简单的方法) 这道面试题考察了循环链表的“创建”,“遍历”和“删除”。创建的循环链表的结构图:解决约瑟夫环问题的过程#includeusing ...
阅读全文