C语言实现单循环链表
第一次在CSDN这边写博客,主要是为了记录自己学习的历程,望诸位共勉。 首先循环链表是神魔恋?其实就是为了解决单链表只能从头开始过于麻烦诞生的,我愿称之为单链表2.0。(所以如果搞不清楚的话建议先学一下单链表。) 那么它和单链表之间是什么关系,单链表的结尾指向的是一个空节点,存着NULL这个空值。那么他在索引的时候出现的问题显而易见,如果你不从头结点开始那你就无法访问全部结点。 循环链表的设计者明显就很鬼才了,我把最后一个结点的指向变成头节点不就可以了,这样我就可以从想开始的地方开始索引,而且都能保证索引到全部结点,然后这个链表就像贪吃蛇咬到自己尾巴一样闭环了,就叫(单)循环链表。 下面贴出代码的具体实现,如有不对欢迎指正。 # define _CRT_SECURE_NO_WARNINGS # include <stdio.h> # include <stdlib.h> # include <time.h> # define ERROR 0 # define OK 1 typedef int EleType ; typedef struct CLinkNode { EleType data ; struct CLinkNode * next ; } CLinkNode , * CLinkList ; //初始化循环链表 int InitCLinkList ( CLinkList *