原题网址https://leetcode.cn/problems/remove-nth-node-from-end-of-list/
删除倒数第n个节点;
public ListNode removeNthFromEnd(ListNode head, int n) {
// 可能删除的是第一个,所以引用虚拟节点
ListNode dummyHead = new ListNode(-1);
dummyHead.next = head;
ListNode cur = dummyHead;
ListNode prev = dummyHead;
while(cur != null) {
// 要差n+1个节点,所以这里是n<0的条件
if(n<0) {
prev = prev.next;
}
n--;
cur = cur.next;
}
prev.next = prev.next.next;
return dummyHead.next;
}