给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。
输入:head = [1,2,3,4,5], n = 2
输出:[1,2,3,5]
示例 2:
输入:head = [1], n = 1
输出:[]
示例 3:
输入:head = [1,2], n = 1
输出:[1]
class Solution {
public:ListNode* removeNthFromEnd(ListNode* head, int k) {auto dummy = new ListNode(-1);//弄一个头结点dummy->next = head;int n = 0;for (auto p = dummy->next; p; p = p->next) n ++ ;auto p = dummy;for (int i = 0; i < n - k ; i ++ ) p = p->next;p->next = p->next->next;return dummy->next;}
};