代码随想录02 链表

链表基础

链表是一种通过指针串联在一起的线性结构,每一个节点由两部分组成,一个是数据域一个是指针域(存放指向下一个节点的指针),最后一个节点的指针域指向null(空指针的意思)。

链表的入口节点称为链表的头结点也就是head

如图所示即为单链表

链表1

双链表:每一个节点有两个指针域,一个指向下一个节点,一个指向上一个节点。既可以向前查询也可以向后查询。

链表2

循环链表:就是链表首尾相连,可以用来解决约瑟夫环问题。

链表4

存储方式:数组是在内存中是连续分布的,但链表在内存中不是连续分布的,而是通过指针域的指针链接在内存中各个节点。

所以链表中的节点在内存中不是连续分布的 ,而是散乱分布在内存中的某地址上,分配机制取决于操作系统的内存管理。

链表3

JavaScript 单链表定义

1
2
3
4
5
6
7
8
class ListNode {
val;
next = null;
constructor(value) {
this.val = value
this.next = null;
}
}

代码随想录02 链表
https://username.github.io/2024/07/02/代码随想录02-链表/
作者
ZhuoRan-Takuzen
发布于
2024年7月2日
许可协议