top of page

Delete a Given Node in a Linked List

  • Shreyas Naphad
  • Jun 5, 2024
  • 1 min read

In this article, we will solve a unique problem in the linked list which is to delete a given node in a singly linked list. In this problem, we are not given access to the head of the list. Instead, we are provided with direct access to the node that needs to be deleted.

Example:

4 -> 5 -> 1 -> 9 -> NULL

If the node to be deleted is 5, the linked list should become:

4 -> 1 -> 9 -> NULL

 

Solution:

To solve this problem in constant time, we can copy the data from the next node to the current node, and then delete the next node. This will remove the current node from the list without requiring access to the head of the list.

Steps to Solve:

1.    Copy Data:

·        Copy the data from the node that is next to the target to the target node.

2.    Delete Next Node:

·        Update the next pointer of the target node to skip the next node, which will remove the next node from the list.

 

 

Time Complexity: O(1)

Space Complexity: O(1)

Comments


©2025 by DevSparks.

bottom of page