4.特殊链表

一、双链表

双链表需要注意的是插入删除操作

  1. 插入

图片

  • S->next = p->next
  • p->next->prior = S
  • S->prior = p->next
  • p->next = S(这个必须放在最后)
  1. 删除(删除q)

图片

  • p->next = q->next
  • q->next->prior = p
  • free(q)

二、循环链表

循环链表分为:

  1. 循环单链表

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BJOk7ST0-1592874275181)(https://uploader.shimo.im/f/0YjXxkImVUlFMGhM.png!thumbnail)]

  1. 循环双链表

图片

要注意的是对空表的判断:

  • 循环单链表判断是否为空:L->next == L
  • 循环双链表判断是否为空:L->next == L or L->prior = L

图片

原文地址:https://www.cnblogs.com/theory/p/13338750.html