ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

leetcode19. 删除链表的倒数第 N 个结点

2026/9/16 23:05:27 拓冰建站 浏览量
leetcode19. 删除链表的倒数第 N 个结点

leetcode19. 删除链表的倒数第 N 个结点

题目

在这里插入图片描述

思路

  • 建立虚头节点
  • fast首先走n + 1步 ,因为只有这样同时移动的时候slow才能指向删除节点的上一个节点(方便做删除操作)

代码

class Solution:def removeNthFromEnd(self, head: Optional[ListNode], n: int) -> Optional[ListNode]:pre_head = ListNode(val=0, next=head)node_right = pre_headnode_left = pre_headfor i in range(n+1):  # 快指针比慢指针快 n+1 步,方便删除node_right = node_right.nextwhile node_right:node_right = node_right.nextnode_left = node_left.nextnode_left.next = node_left.next.nextreturn pre_head.next