LeetCode.19.删除链表的倒数第n个节点

题目描述:

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

输入输出实例:

思路:这道题目我们可以用双指针来做,让first和second指针之间的距离为n+1,然后我们first和second指针都往后移动,这样当first所指的为最后一个节点的后一个(即空节点)的时候,我们的second刚好在倒数第n个节点的前一个节点,然后我们second.next = second.next.next,这样达到去除第n个节点的目的。根据上述思路我们有以下代码:

python 复制代码
# Definition for singly-linked list.
class ListNode:
    def __init__(self, val=0, next=None):
        self.val = val
        self.next = next

class Solution:
    def removeNthFromEnd(self, head: Optional[ListNode], n: int) -> Optional[ListNode]:
        #创建一个虚拟节点方便处理边界
        dummy = ListNode()
        dummy.next = head
        first = dummy
        second = dummy

        for _ in range(n+1):
            first = first.next
        
        while first:
            first = first.next
            second = second.next

        second.next = second.next.next

        return dummy.next
相关推荐
与虾牵手5 分钟前
大模型流式输出 Streaming API 完整教程:从原理到踩坑,一篇搞定
python·aigc·ai编程
j_xxx404_7 分钟前
C++算法:一维/二维前缀和算法模板题
开发语言·数据结构·c++·算法
高洁0115 分钟前
学习基于数字孪生的质量预测与控制
人工智能·python·深度学习·数据挖掘·transformer
xier_ran20 分钟前
【第一周】关键词解释:倒数排名融合(Reciprocal Rank Fusion, RRF)算法
开发语言·python·算法
HelloWorld__来都来了21 分钟前
如何用python爬取上市公司信息
开发语言·python
开朗觉觉25 分钟前
将json字符串转换为json对象
linux·服务器·python
2501_9481142428 分钟前
星链4SAPI + OpenClaw实战:给GPT-5.4与Claude 4.6装上“职业传送门”
python·gpt·架构
进击的小头41 分钟前
第6篇:贝尔曼最优化理论
python·算法·动态规划
马士兵教育1 小时前
2026年IT行业基本预测!计算机专业学生就业编程语言Java/C/C++/Python该如何选择?
java·开发语言·c++·人工智能·python·面试·职场和发展
Book思议-1 小时前
顺序表和链表核心差异与优缺点详解
java·数据结构·链表