# [leetcode] 【链表】19. Remove Nth Node From End of List

Given a linked list, remove the nth node from the end of list and return its head.

For example,

   Given linked list: 1->2->3->4->5, and n = 2.

After removing the second node from the end, the linked list becomes 1->2->3->5.


Note:
Given n will always be valid.

Try to do this in one pass.

# 题解

/**
* Definition for singly-linked list.
* struct ListNode {
*     int val;
*     ListNode *next;
*     ListNode(int x) : val(x), next(NULL) {}
* };
*/
class Solution {
public:
ListNode* removeNthFromEnd(ListNode* head, int n) {
ListNode newhead(-1);
newhead.next=head;
ListNode *fast=&newhead,*slow=&newhead;
for(int i=0;i<n;i++)
fast=fast->next;
while(fast->next)
{
fast=fast->next;
slow=slow->next;
}
ListNode *temp=slow->next;
slow->next=slow->next->next;
delete temp;
return newhead.next;

}
};

• 本文已收录于以下专栏：

## [C++]LeetCode 19: Remove Nth Node From End of List（删除链表中倒数第n个节点）

Problem： Given a linked list, remove the nth node from the end of list and return its head. For exam...

## LeetCode 19. Remove Nth Node From End of List(链表)

LeetCode 19. Remove Nth Node From End of List(链表)LeetCode 19 Remove Nth Node From End of List链表 问题描述...

## leetcode[#19 链表 标尺]Remove Nth Node From End of List

Given a linked list, remove the nth node from the end of list and return its head. For example, ...

## leetcode:单链表之Remove Nth Node From End of List

leetcode:单链表之Remove Nth Node From End of List 题目: Given a linked list, remove the nth node from the ...

## 【LeetCode-面试算法经典-Java实现】【019-Remove Nth Node From End of List（移除单链表的倒数第N个节点）】

【019-Remove Nth Node From End of List（移除单链表的倒数第N个节点）】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题　　Given a l...

## [leetcode: Python]19. Remove Nth Node From End of List

Given a linked list, remove the nth node from the end of list and return its head.For example,Given ...
• NXHYD
• 2017-05-19 08:28
• 125

## LeetCode#19. Remove Nth Node From End of List

举报原因： 您举报文章：深度学习：神经网络中的前向传播和反向传播算法推导 色情 政治 抄袭 广告 招聘 骂人 其他 (最多只允许输入30个字)