循环链表:是一种头尾相接的链表(即表中最后一个结点的指针域指向头结点,整个链表形成一个环)。
优点:从表中任意结点出发均可找到表中其它结点
空表的头结点的指针域不为空,指向自身,就是头指针
表的操作常常实在表的首尾位置上进行的
#include<stdio.h>
#include<stdlib.h>
int main()
{
}
typedef int ElemType;
//定义一个单链表
typedef struct node
{
ElemType data;
struct node *next;
}LNode,*LinkList;
//初始化
void InitList(LinkList &L)
{
L=(LinkList)malloc(sizeof(LNode));
L->next=L;
}
//合并两个循环单链表
LinkList Connect(LinkList Ta,LinkList Tb)
{
LinkList p;
p=Ta->next;
Ta->next=Tb->next->next;
free(Tb->next);
return Tb;
}