当前位置: 首页 > article >正文

python-leetcode-删除链表的倒数第 N 个结点

19. 删除链表的倒数第 N 个结点 - 力扣(LeetCode)

# 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(0, head)
        first = dummy
        second = dummy

        # 让第一个指针先走 n+1 步
        for _ in range(n + 1):
            first = first.next

        # 同时移动两个指针,直到第一个指针到达链表末尾
        while first:
            first = first.next
            second = second.next

        # 删除倒数第 n 个节点
        second.next = second.next.next

        # 返回头节点
        return dummy.next


http://www.kler.cn/a/526010.html

相关文章:

  • Sqoop源码修改:增加落地HDFS文件数与MapTask数量一致性检查
  • Kafka 副本机制(包含AR、ISR、OSR、HW 和 LEO 介绍)
  • Oracle迁移DM数据库
  • RPC是什么?和HTTP区别?
  • 从单体应用到微服务的迁移过程
  • MoE的学习
  • Safe 推出 Agentathon 活动:推动 AI 原生智能账户采用
  • Excel 技巧22 - Ctrl+D 向下复制(★★),复制同间距图形
  • Java的StackWalker类
  • jQuery小游戏(二)
  • Windows环境安装nvm,并使用nvm管理nodejs版本教程
  • Leetcode:219
  • Debezium Schema History Recovery 机制详解
  • 钓鱼的肝:春节特别篇
  • 【Elasticsearch】 Intervals Query
  • 为AI聊天工具添加一个知识系统 之74 详细设计之15 正则表达式 之2
  • 【卫星通信】链路预算方法
  • CE11.【C++ Cont】练习题组12(结构体专题)
  • MATLAB中textBoundary函数用法
  • 在godot中接入大模型api,实现npc的自动对话
  • 如何使用Python调用大语言模型的API接口?
  • 【单细胞第二节:单细胞示例数据分析-GSE218208】
  • 改进候鸟优化算法之五:基于多目标优化的候鸟优化算法(MBO-MO)
  • C++ 继承和多态
  • Docker小游戏 | 使用Docker部署FC-web游戏模拟器
  • 顺启逆停程序