Python Algorithm- Delete a Linked List node at a given position

Python Algorithm- Delete a Linked List node at a given position - Linked List If node to be deleted is root, simply delete it. To delete a middle node

Given a singly linked list and a position, delete a linked list node at the given position.

Example:

```Input: position = 1, Linked List = 8->2->3->1->7

Input: position = 0, Linked List = 8->2->3->1->7

If node to be deleted is root, simply delete it. To delete a middle node, we must have pointer to the node previous to the node to be deleted. So if positions is not zero, we run a loop position-1 times and get pointer to the previous node.

Python Programming:

``````# Python program to delete a node in a linked list
# at a given position

# Node class
class Node:

# Constructor to initialize the node object
def __init__(self, data):
self.data = data
self.next = None

def __init__(self):

# Function to insert a new node at the beginning
def push(self, new_data):
new_node = Node(new_data)

# Given a reference to the head of a list
# and a position, delete the node at a given position
def deleteNode(self, position):

# If linked list is empty
return

# If head needs to be removed
if position == 0:
temp = None
return

# Find previous node of the node to be deleted
for i in range(position -1 ):
temp = temp.next
if temp is None:
break

# If position is more than number of nodes
if temp is None:
return
if temp.next is None:
return

# Node temp.next is the node to be deleted
# store pointer to the next of node to be deleted
next = temp.next.next

temp.next = None

temp.next = next

def printList(self):
while(temp):
print " %d " %(temp.data),
temp = temp.next

# Driver program to test above function
llist.push(7)
llist.push(1)
llist.push(3)
llist.push(2)
llist.push(8)

llist.printList()
llist.deleteNode(4)
print "\nLinked List after Deletion at position 4: "
llist.printList()
``````

Output:

```Created Linked List:
8  2  3  1  7
Linked List after Deletion at position 4:
8  2  3  1```
READ  Python Algorithm - Find n’th node from the end of a Linked List

Venkatesan Prabu

Wikitechy Founder, Author, International Speaker, and Job Consultant. My role as the CEO of Wikitechy, I help businesses build their next generation digital platforms and help with their product innovation and growth strategy. I'm a frequent speaker at tech conferences and events.

X