题解 | #删除链表的倒数第n个节点#
删除链表的倒数第n个节点
http://www.nowcoder.com/practice/f95dcdafbde44b22a6d741baf71653f6
// write code here
ListNode p = head;
int len = 0; //记录链表的长度。
while(p != null){
len++;
p = p.next;
}
//如果删除的是头结点,则返回头结点下一个元素。
if(len-n == 0) return head.next;
p = head;
int cnt = len-n-1;
while(cnt-- > 0){
p = p.next;
}
p.next = p.next.next;
return head;
}