/**
* Definition for singly-linked list.
* type ListNode struct {
* Val int
* Next *ListNode
* }
*/
func removeNthFromEnd(head *ListNode, n int) *ListNode {
result :=&ListNode{0,head}
var ptr1,ptr2 *ListNode=head,result
for i:=1;ptr1 !=nil;i++ {
ptr1 = ptr1.Next
if (i>n){
ptr2 = ptr2.Next
}
}
ptr2.Next=ptr2.Next.Next
return result.Next
}