基本概念
- 链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的
种类:单向链表、双向链表、单向循环链表、双向循环链表、复杂链表(有一个random指针)
衍生应用
双指针
- 判定链表中是否包含环(单向环、双向环)
- 后者主要解决数组(或者字符串)中的问题,比如二分查找。
- 递归
- 线性表
// 1.除了正常的遍历链表之外,递归也可以遍历链表,并且链表头不变const re = head => {if (!head) return nullconsole.log(head.val)head.next = deleteNode(head.next)return head}// 2. 正常遍历链表const re = head => {while(head) {head = head.next}}
