什么是循坏链表?
循环链表:是一种头尾想接的链表(即表中的最后一个结点的指针域指向头节点,整个链表形成一个环)
有什么优点?
从表中任一结点出发均可以找到表中的其他结点。
单链表于循环单链表的区别
单链表的尾节点的指针域为NULL;循坏单链表中尾节点的指针域指向头节点、
设计遍历操作,其终止条件:判断它们是否等于头指针。
循环条件:
单链表 | 单循环链表 |
P != NULL | P != pHead |
P->pNext != NULL | P->pNext != pHead |
头指针表示单循环链表
尾指针表示单循环链表
注:表的操作常常是在表的首尾位置进行。
带尾指针的循环单链表的合并
主要操作:
①临时指针变量p存Ta表的头结点
②Tb的表头接到Ta的表尾(表头指的是首节点,而不是头结点,需要把头结点释放)
③释放Tb的表的头结点
④Tb的表尾接到Ta的头节点
LinkList Connect(LinkList Ta, LinkList Tb){
p=Ta->next;
Ta->next=Tb->next->next
free(Tb->next);
Tb->next=p;
return Tb;
}
本内容学习来源于B站老师讲解,贴一个链接第04周02--2.5.3循环链表2--两个链表合并_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1nJ411V7bd?p=36&vd_source=c1334457bdec4b0e8fdd0202732f740c