19. Remove Nth Node From End of List
Problem:
Given a linked list, remove the n-th node from the end of list and return its head.
Example:
Note:
Given n will always be valid.
Follow up:
Could you do this in one pass?
Solution:
Set a pointer p1
for iterating, and p2
which is n
nodes behind, pointing at the (n+1)-th node from the end of list.
Boundaries that should be awared of:
p2
could be one node beforehead
, which means thehead
should be removed.p2
could be larger than the length of the list (Though the description saysn
will always be valid, we take care of it anyway).It should be
p1.next
touches the end rather thanp1
because we wantp1
pointing at the last node.
☆*: .。. o(≧▽≦)o .。.:☆☆: .。. o(≧▽≦)o .。.:☆☆: .。. o(≧▽≦)o .。.:*☆
☆*: .。. o(≧▽≦)o .。.:☆☆: .。. o(≧▽≦)o .。.:*☆
Last updated