import java.util.*;
public class Solution {
public ListNode removeNthFromEnd (ListNode head, int n) {
if( n == 0 || head == null) return head;
ListNode q = head;
ListNode p = head;
for(int i = 0 ; i < n ; i++){
if( p != null) p = p.next;
//当n长度大于链表长度时,直接返回head;
else return head;
}
if(p == null) return head.next;
while(p.next != null){
p=p.next;
q=q.next;
}
q.next = q.next.next;
return head;
}
}