Given A linked list, remove the nth node from the end of the list and return its head.
For example,
n = 2. After removing the second node from the end, the linked list becomes 1->2->3->5.
/*** Definition for singly-linked list. * public class ListNode {* int val; * ListNode Next; * ListNode (int X) {val = x;}}*/ Public classSolution { PublicListNode Removenthfromend (ListNode head,intN) {//Eye: Two pointers, one fast and one slow, and the step is n//Note the points://1. Determine the integer range of the input//2. The deletion is the processing method of the head node (drawing) if(n<=0)return NULL; ListNode Right=Head; while(n>0) { Right=Right.next; N--; } ListNode Left=Head; if(right==NULL)returnHead.next;//Note Remove the exception for the first node while(right.next!=NULL) { left=Left.next; Right=Right.next; } Left.next=left.next.next;//Delete a node returnHead; }}
[Leedcode 19] Remove Nth Node from End of List