This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Node: | |
def __init__(self, data): | |
self.data = data # assigning the data passed | |
self.next = None # initializing the node as null | |
class LinkedList: | |
def __init__(self): | |
self.head = None |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Node: | |
def __init__(self, data): | |
self.data = data # assigning the data passed | |
self.next = None # initializing the node as null | |
class LinkedList: | |
def __init__(self): | |
self.head = None |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# insertion of new node at front of linked list | |
def insert_at_front(head, data): | |
# creating new node to be inserted | |
new_node = Node(data) | |
new_node.next = head # pointing the new node's next to head | |
head = new_node # making the new node as head | |
return head |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def insert_at_end(head, data): | |
new_node = Node(data) | |
current = head | |
while current.next: # traversing till the last node | |
current = current.next | |
# change the next of last node | |
current.next = new_node | |
return head |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def insert_at_pos(head, data, position): | |
# edge case: check if pos is 0 | |
new_node = Node(data) | |
if position is 0: | |
new_node.next = head | |
head = new_node | |
return head | |
pos = 0 | |
new_node = Node(data) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Node: | |
def __init__(self, data=None): | |
self.data = data | |
self.next = None | |
class SinglyLinkedList: | |
def __init__(self): | |
self.head = None |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def delete_at_start(head): | |
# edge case: return if head is null | |
if not head: | |
return None | |
head = head.next # moving head to next node | |
return head |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def delete_at_end(head): | |
if not head: | |
return None | |
prev_node = head | |
while prev_node.next.next: | |
prev_node = prev_node.next | |
prev_node.next = None | |
return head |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def delete_at_pos(head, position): | |
if not head: | |
return None | |
if position is 0: | |
return head.next | |
prev_node = head | |
curr_node = head.next | |
current_pos = 1 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Node: | |
def __init__(self, data=None): | |
self.data = data | |
self.next = None | |
""" | |
Deleting a node at start. | |
""" | |
def delete_at_start(head): |