package
0.0.0-20230809123828-b071cee2968a
Repository: https://github.com/codehanhan/leetcode-go.git
Documentation: pkg.go.dev

# README

删除链表的倒数第N个节点

1. 题目描述

给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。

2. 示例

示例1 1

输入:head = [1,2,3,4,5], n = 2
输出:[1,2,3,5]

示例2

输入:head = [1], n = 1
输出:[]

示例3

输入:head = [1,2], n = 1
输出:[1]

提示

  • 链表中结点的数目为 sz
  • 1 <= sz <= 30
  • 0 <= Node.val <= 100
  • 1 <= n <= sz

3. 解题

  1. 递归找到倒数第n个节点,然后删除之,由于删除的节点有可能是最后一个节点,因此需要前置节点。

递归找到倒数第n个节点的方法是:使用计数量order,初始化为0,每次递归返回就-1,则当order=-n时,就找到了倒数n个节点

  1. 快慢指针法