Skip to content

Commit 8a55bf7

Browse files
Update
1 parent d8ebfbb commit 8a55bf7

File tree

1 file changed

+20
-11
lines changed

1 file changed

+20
-11
lines changed

Chapter04/delete_operation_singly_linkedlist.py

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,16 @@ def __init__(self, data=None):
66

77
class SinglyLinkedList:
88
def __init__ (self):
9-
self.tail = None
9+
self.head = None
1010
self.size = 0
1111

1212
def append(self, data):
1313
# Encapsulate the data in a Node
1414
node = Node(data)
15-
if self.tail is None:
16-
self.tail = node
15+
if self.head is None:
16+
self.head = node
1717
else:
18-
current = self.tail
18+
current = self.head
1919
while current.next:
2020
current = current.next
2121
current.next = node
@@ -29,8 +29,8 @@ def delete_first_node (self):
2929

3030

3131
def delete_last_node (self):
32-
current = self.tail
33-
prev = self.tail
32+
current = self.head
33+
prev = self.head
3434
while current:
3535
if current.next is None:
3636
prev.next = current.next
@@ -40,12 +40,12 @@ def delete_last_node (self):
4040

4141

4242
def delete(self, data):
43-
current = self.tail
44-
prev = self.tail
43+
current = self.head
44+
prev = self.head
4545
while current:
4646
if current.data == data:
47-
if current == self.tail:
48-
self.tail = current.next
47+
if current == self.head:
48+
self.head = current.next
4949
else:
5050
prev.next = current.next
5151
self.size -= 1
@@ -59,9 +59,18 @@ def delete(self, data):
5959
words.append('ham')
6060
words.append('spam')
6161

62+
words.delete_first_node()
63+
64+
current = words.head
65+
while current:
66+
print(current.data)
67+
current = current.next
68+
6269

70+
6371
words.delete_last_node()
64-
current = words.tail
72+
73+
current = words.head
6574
while current:
6675
print(current.data)
6776
current = current.next

0 commit comments

Comments
 (0)