leetcode hot100 删除链表的第n个节点

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

已解答

中等

相关标签

相关企业

提示

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

Definition for singly-linked list.

class ListNode(object):

def init(self, val=0, next=None):

self.val = val

self.next = next

class Solution(object):

def removeNthFromEnd(self, head, n):

"""

:type head: OptionalListNode

:type n: int

:rtype: OptionalListNode

"""

用list很好实现

可以双指针,慢的慢n个,当都到达的时候,就是对了

low = head

fast =head

prev = None

next_node = fast.next

for i in range(n):

fast = fast.next

while fast!=None:

prev = low

low=low.next

next_node = low.next

fast = fast.next

if prev!=None:

prev.next=next_node

return head

else:

return head.next

很简单,可以用list直接做,高级做法是双指针

相关推荐
To_OC2 小时前
LC 200 岛屿数量:经典 DFS 入门题,我第一次写居然连方向都搞错了
javascript·算法·leetcode
To_OC19 小时前
LC 128 最长连续序列:别上来就排序,O (n) 解法才是这题的灵魂
javascript·算法·leetcode
05Kevin1 天前
lk每日冒险题--数据结构6.27
算法
To_OC2 天前
从一次栈溢出报错说起,我把递归彻底扒明白了
javascript·算法·程序员
千纸鹤安安2 天前
千问Qwen-AgentWorld来了:一个语言模型搞定七大Agent场景,GPT-5.4都输了
算法
七牛开发者2 天前
MCP 到底是什么?为什么 Agent 都想接上它
算法·aigc·agent
kisshyshy2 天前
从递归到迭代,一文吃透二叉树的核心知识与 JavaScript 实现
javascript·算法·代码规范