一、链表是一种线性数据结构:分为单链表和双链表。

链表Linked List

链表Linked List

二、链表结构

1、单链表:值(value)和指针(next)

链表Linked List

2、双链表:值(value)和指针(prev,next)

链表Linked List

三、操作:索引、插入、删除

1、单链表

(1)、时间复杂度:O(N)、O(1)、O(N)

(2)、索引:需从head结点开始遍历,找到所需结点;

(3)、插入:使用给定值初始化新结点,将新结点的next字段连接到下一个节点,将上一个节点的next字段连接到新结点;

                   (插入头结点:初始化新结点,新结点next字段连接原头结点,将新结点指定为头结点)

(4)、删除:找到待删除结点的上一个结点和下一个结点,连接上一结点和下一结点;

                   (删除头结点:将待删除结点的下一结点指定为Head结点)

2、双链表:

(1)、时间复杂度:O(N)、O(1)、O(1)

(2)、索引:需从head结点开始遍历,找到所需结点;

(3)、插入:使用给定值初始化新结点,将新结点的next字段连接到下一个节点,prev字段连接到上一个结点,将上一个节点的 next字段连接到新结点,下一个结点的prev字段连接到新结点;

(4)、删除:找到待删除结点的上一个节点和下一个节点,将上一个结点的next连接到下一个节点,下一个结点的prev连接到上一个节点

四、时间复杂度对比

链表Linked List

相关文章:

  • 2022-01-27
  • 2022-01-02
  • 2021-05-19
  • 2021-09-03
  • 2022-12-23
  • 2021-09-25
  • 2021-12-01
  • 2021-07-24
猜你喜欢
  • 2021-05-07
  • 2022-12-23
  • 2021-07-07
  • 2021-08-01
  • 2021-07-19
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案