基本概念

  • 链表是一种物理存储单元上非连续、非顺序的存储结构数据元素的逻辑顺序是通过链表中的指针链接次序实现的
  • 种类:单向链表、双向链表、单向循环链表、双向循环链表、复杂链表(有一个random指针)

    衍生应用

  • 双指针

  • 判定链表中是否包含环(单向环、双向环)
  • 后者主要解决数组(或者字符串)中的问题,比如二分查找
  • 递归
  • 线性表


  1. // 1.除了正常的遍历链表之外,递归也可以遍历链表,并且链表头不变
  2. const re = head => {
  3. if (!head) return null
  4. console.log(head.val)
  5. head.next = deleteNode(head.next)
  6. return head
  7. }
  8. // 2. 正常遍历链表
  9. const re = head => {
  10. while(head) {
  11. head = head.next
  12. }
  13. }