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: Optional[ListNode]

:type n: int

:rtype: Optional[ListNode]

"""

用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直接做,高级做法是双指针

相关推荐
嘴贱欠吻!2 小时前
Flutter鸿蒙开发指南(七):轮播图搜索框和导航栏
算法·flutter·图搜索算法
张祥6422889042 小时前
误差理论与测量平差基础笔记十
笔记·算法·机器学习
踩坑记录2 小时前
leetcode hot100 2.两数相加 链表 medium
leetcode·链表
qq_192779872 小时前
C++模块化编程指南
开发语言·c++·算法
cici158744 小时前
大规模MIMO系统中Alamouti预编码的QPSK复用性能MATLAB仿真
算法·matlab·预编码算法
历程里程碑4 小时前
滑动窗口---- 无重复字符的最长子串
java·数据结构·c++·python·算法·leetcode·django
2501_940315265 小时前
航电oj:首字母变大写
开发语言·c++·算法
CodeByV6 小时前
【算法题】多源BFS
算法
TracyCoder1236 小时前
LeetCode Hot100(18/100)——160. 相交链表
算法·leetcode
浒畔居6 小时前
泛型编程与STL设计思想
开发语言·c++·算法