https://leetcode.com/problems/remove-nth-node-from-end-of-list/#/description
# 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
"""
node=head
for i in xrange(n):
node=node.next
if node==None:
return head.next
firstNode=head
nextNode=head.next.next
while node.next:
firstNode=firstNode.next
node=node.next
if nextNode: nextNode=nextNode.next
if firstNode: firstNode.next=nextNode
return head