linked-list:

Delete Node in a Linked List

Write a function to delete a node (except the tail) in a singly linked list, given only access to that node. Supposed the linked list is 1 -> 2 -> 3 -> 4 and you are given the third node with value 3, the linked list should become 1 -> 2 -> 4 after calling your function. Solution # Definition for singly-linked list. # class ListNode(object): # def __init__(self, x): # self.

by lek tin in "algorithm" access_time 1-min read

Remove Nth Node From End of List

Given a linked list, remove the n-th node from the end of list and return its head. 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. Follow-up Could you do this in one pass? Solution # Definition for singly-linked list. # class ListNode(object): # def __init__(self, x): # self.val = x # self.

by lek tin in "algorithm" access_time 1-min read