LeetCode 19 删除链表的倒数第N个节点
Posted 章章的魔法小屋
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 19 删除链表的倒数第N个节点相关的知识,希望对你有一定的参考价值。
LeetCode 19 删除链表的倒数第N个节点 题目跳转链接
class Solution
public:
ListNode* removeNthFromEnd(ListNode* head, int n)
ListNode* dummyHead=new ListNode(0);
dummyHead->next=head;
ListNode* fast=dummyHead;
ListNode* slow=dummyHead;
ListNode* temp;
// for(int i=0;i<=n;i++) //这里是<=n 多走一次
//
// fast=fast->next;
// //这样写有报错,fast会为空
while(n--&&fast!=nullptr)
fast=fast->next;
fast=fast->next; //fast先走一步,相当于slow慢了一步,删掉slow前面的那个节点
while(fast!=nullptr) //最后一个的下一个 即最后一个的 fast->next 是不满足条件的 进不去
fast=fast->next;
slow=slow->next;
temp=slow->next;
slow->next=slow->next->next;
delete temp;
return dummyHead->next;
;
以上是关于LeetCode 19 删除链表的倒数第N个节点的主要内容,如果未能解决你的问题,请参考以下文章