- 两遍遍历
class Solution:
def removeNthFromEnd(self, head: ListNode, n: int) -> ListNode:
dummy=ListNode(0)
dummy.next=head
length=0
l1=head
while(l1!=None):
length+=1
l1=l1.next
length=length-n
l1=dummy
while(length>0):
length-=1
l1=l1.next
l1.next=l1.next.next
return dummy.next
- 一遍遍历
class Solution:
def removeNthFromEnd(self, head: ListNode, n: int) -> ListNode:
dummyNode=ListNode(0)
dummyNode.next=head
l1=dummyNode
l2=dummyNode
for i in range(n):
l1=l1.next
while l1.next != None:
l2=l2.next
l1=l1.next
l2.next=l2.next.next
return dummyNode.next