lists_ii
Lists II
Note: This class was not taught, it is a little bit advanced and should probably be moved to season 2 or 3.
Although this is Lists II, you may wish to look at Basics III first to see how lists are used in a more complex program.
In this class we will examine exactly what a list is.
Class Node
class Node: def __init__(self, name): self.name = name self.next = 0
A node is a bit of data. A node contains a name, for exampe – the name of a fruit. It also contains special data which points to the next node. At the very least this is a bit of data called next, which shows the 'next node'.
A node is a node, which is a bit of information. This is the data structure. Next we need to define the algorithm(s) which operate on the data structure.
Class List
from Node import Node class List: def __init__(self): self.root = 0 self.last = 0 def append(self, n): if isinstance(n, Node): if not isinstance(self.root, Node): self.root = n self.last = n else: self.last.next = n self.last = n else: print("Error: not a node") def print(self): n = self.root print(n.name) while isinstance(n.next, Node): n = n.next print(n.name) def printl(self): print("[", end = '') n = self.root while isinstance(n, Node): if n != self.root: print(' ', end = '') print("'", end = '') print(n.name, end = '') print("'", end = '') if isinstance(n.next, Node): print(',', end = '') n = n.next else: n = 0 print("]")
under construction
lists_ii.txt · Last modified: 2024/07/29 00:08 by appledog