链表简介·不需要担心空间不够·循环链表最后一个结点指向第一个结点形成环

链表简介

链表是一种很常见的数据结构,有点像我们用链子连起来的小珠子。珠子可以是散落在不同位置上的,但通过链子(也就是指针)连接起来,就能按顺序访问它们了。

链表的特点

特点 描述
插入删除效率高 在任意位置插入或删除珠子,几乎瞬间就能完成,时间复杂度是O(1)。
灵活度高 珠子可以随时增加或减少,不需要担心空间不够。
空间分散 珠子可以放在任何位置,不需要连续排列。
查找效率低 要找到某个珠子,可能需要从头到尾逐个检查,时间复杂度是O(N)。
空间利用率高 只需要根据需要分配空间,空间利用率很高。

链表的结构

链表由一个个结点组成,每个结点有两个部分:一个是存放数据的区域,另一个是存放下一个结点位置的指针。

链表的类型

链表的应用

链表非常适合需要频繁插入和删除的场景,比如任务队列或者电话簿。

设置头结点的优势

使用头结点可以让处理首元结点(第一个珠子)更加方便,同时也能统一空表和非空表的处理方式。