29. Leetcode 19. 删除链表的倒数第 N 个结点 (链表-双指针)
生活随笔
收集整理的這篇文章主要介紹了
29. Leetcode 19. 删除链表的倒数第 N 个结点 (链表-双指针)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
給你一個鏈表,刪除鏈表的倒數第?n?個結點,并且返回鏈表的頭結點。示例 1:輸入:head = [1,2,3,4,5], n = 2
輸出:[1,2,3,5]
示例 2:輸入:head = [1], n = 1
輸出:[]
示例 3:輸入:head = [1,2], n = 1
輸出:[1]# 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: ListNode, n: int) -> ListNode:# 設置啞頭節點dummy = ListNode(0)dummy.next = headslow = dummyfast = dummy# 快指針先走n+1步for i in range(n+1):fast = fast.next# 快慢指針一起移動while fast != None:slow = slow.nextfast = fast.next# 刪除慢指針的下一個節點slow.next = slow.next.nextreturn dummy.next
總結
以上是生活随笔為你收集整理的29. Leetcode 19. 删除链表的倒数第 N 个结点 (链表-双指针)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 28. Leetcode 25. K 个
- 下一篇: 30. Leetcode 83. 删除排