【面试算法笔记】0201-链表-链表理论基础

📅 2026/7/13 22:05:08
【面试算法笔记】0201-链表-链表理论基础
个人主页https://github.com/zbhgis前言本系列主要记录自己学习算法的过程中的感悟。链表的概念什么是链表链表是一种物理存储单元上非连续、非顺序的线性结构。组成每个节点Node包含两部分。数据域 (val)存储具体的值。指针域 (next)存放指向下一个节点的地址指针。终止条件最后一个节点的指针域通常指向null空指针表示链表结束。链表的类型单链表每个节点只有一个指针指向下一个节点双链表每个节点有两个指针分别指向前驱和后继循环链表尾节点指向头节点形成一个环链表的存储方式在内存中是散乱分布的通过指针将各个节点连接起来。链表的基本操作删除节点添加节点单链表定义操作见算法public class ListNode { int val; ListNode next; public ListNode() {}; public ListNode(int val) {this.val val;} public ListNode(int val, ListNode next) { this.val val; this.next next; } }双链表定义操作见算法public class ListNode { int val; ListNode prev; ListNode next; public ListNode() {}; public ListNode(int val) {this.val val;} public ListNode(int val, ListNode prev, ListNode next) { this.val val; this.prev prev; this.next next; } }链表的性能分析查询O(n) 增删O(1)参考https://programmercarl.com/%E9%93%BE%E8%A1%A8%E7%90%86%E8%AE%BA%E5%9F%BA%E7%A1%80.html