```
def removeNthFromEnd(self, head, n):
self._current = None
def probe(head, n):
if head.next:
order = probe(head.next, n) + 1
if order == n:
self._current = head
return order
else:
return 0
if head:
m = probe(head, n)
if self._current:
#del node
temp = self._current.next
if temp:
self._current.next = self._current.next.next
temp.next = None
elif m < n:
temp = head
head = head.next
temp.next = None
else:
return None
return head
```