File tree Expand file tree Collapse file tree 1 file changed +0
-10
lines changed
Sprint-2/implement_linked_list Expand file tree Collapse file tree 1 file changed +0
-10
lines changed Original file line number Diff line number Diff line change @@ -24,7 +24,6 @@ def push_head(self, value):
2424 return new_node
2525
2626 def pop_tail (self ):
27-
2827 if self .tail is None :
2928 raise IndexError ("pop_tail from empty linked list" )
3029
@@ -34,33 +33,24 @@ def pop_tail(self):
3433 self .head = None
3534 self .tail = None
3635 else :
37- # Remove from tail
3836 self .tail = self .tail .previous
3937 self .tail .next = None
4038
4139 return value
4240
4341 def remove (self , node ):
44- """
45- Remove the given node from the list in O(1) time.
46- Takes a handle returned by push_head().
47- """
4842 if node is None :
4943 raise ValueError ("Cannot remove None node" )
5044
5145 if node == self .head == self .tail :
52- # Only one element
5346 self .head = None
5447 self .tail = None
5548 elif node == self .head :
56- # Remove from head
5749 self .head = node .next
5850 self .head .previous = None
5951 elif node == self .tail :
60- # Remove from tail
6152 self .tail = node .previous
6253 self .tail .next = None
6354 else :
64- # Remove from middle
6555 node .previous .next = node .next
6656 node .next .previous = node .previous
You can’t perform that action at this time.
0 commit comments