链表操作,只能遍历一遍然后。
用双指针
# Definition for singly-linked list. # class ListNode(object): # def __init__(self, x): # self.val = x # self.next = None class Solution(object): def removeNthFromEnd(self, head, n): """ :type head: ListNode :type n: int :rtype: ListNode """ left=right=head for i in range(n): right=right.next if right is None: return head.next #special while right.next is not None: right=right.next left=left.next left.next=left.next.next return head
时间: 2024-11-11 18:52:28