力扣-19.删除链表的倒数第N个结点
题目描述
给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。
class Solution {
public:ListNode* removeNthFromEnd(ListNode* head, int n) {ListNode* pre = new ListNode(-1);pre->next = head;ListNode* l1=pre;ListNode* l2=pre;while (n>0){l2=l2->next;n--;}while (l2&&l2->next){l1=l1->next;l2=l2->next;}if(l1->next)l1->next=l1->next->next;elsereturn NULL;return pre->next;}
};
小结:这道题也是比较简单,难点依然在边界值处理,给链表加一个头结点会比较方便后续的运算