May 2017
Intermediate to advanced
310 pages
8h 5m
English
The first operation that we need to perform is to append items to the list. This operation is sometimes called an insert operation. Here we get a chance to hide away the Node class. The user of our list class should really never have to interact with Node objects. These are purely for internal use.
A first shot at an append() method may look like this:
class SinglyLinkedList: # ... def append(self, data): # Encapsulate the data in a Node node = Node(data) if self.tail == None: self.tail = node else: current = self.tail while current.next: current = current.next current.next = node
We encapsulate data in a node, so that it now has the next pointer attribute. From here we check if there are any existing nodes in the list ...