public class Solution {
public ListNode removeNthFromEnd(ListNode head, int n) {
if(n == 0){
return head;
}
int size = 0;
ListNode cur = head;
while (cur != null) {
size++;
cur = cur.next;
}
ListNode dummyHead = new ListNode();
dummyHead.next = head;
ListNode prev = dummyHead;
for (int i = 0; i < size - n; i++) {
prev = prev.next;
}
prev.next = prev.next.next;
return dummyHead.next;
}
}