[LeetCode-interview algorithm classic-Java implementation] [019-Remove Nth Node From End of List (Remove the last N nodes of a single-chain table)], removenode
[019-Remove Nth Node From End of List (Remove the Nth Node From the last of a single-chain table )][LeetCode-interview algorithm classic-Java implementation] [directory indexes for all questions]Original question
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.
Theme
Delete the nth last node of a single-chain table. Note: The input N is valid and the operation is completed in a traversal.
Solutions
First let a pointer go to the nth node, then let a pointer point to the header node, and then two pointers go together until the previous pointer ends at the end, the next pointer is the last N + 1 node. You can delete the last N node.
Code Implementation
Linked List Node Type
public class ListNode { int val; ListNode next; ListNode(int x) { val = x; next = null; }}
Algorithm Implementation class
Public class Solution {public ListNode removeNthFromEnd (ListNode head, int n) {ListNode pa = head; ListNode pb = head; // locate the nth node for (int I = 0; I <n & pa! = Null; I ++) {pa = pa. next;} if (pa = null) {head = head. next; return head;} // The difference between pb and pa is n-1 node // when pa. next is null, and pb is in the n + 1 position at the bottom while (pa. next! = Null) {pa = pa. next; pb = pb. next;} pb. next = pb. next. next; return head ;}}
Evaluation Result
Click the image. If you do not release the image, drag it to a position. After the image is released, you can view the complete image in the new window.
Note
Please refer to the following link for more information: http://blog.csdn.net/derrantcm/article/details/46997239]
Copyright Disclaimer: This article is an original article by the blogger and cannot be reproduced without the permission of the blogger.