def depthFirstSearch(self): s = Stack(100) visited = [] head = self.root s.push(head) while not s.isStackEmpty(): if head.getData() not in visited and head.getLeft(): head = head.getLeft() s.push(head) else: head = s.pop() visited.append( head.getData() ) print (head.getData()) if head.getRight(): head = head.getRight() s.push(head)
def depthFirstSearch(self): s = Stack(100) visited = [] head = self.root s.push(head) while not s.isStackEmpty(): if head.getData() not in visited and head.getLeft(): head = head.getLeft() s.push(head) else: head = s.pop() visited.append(head.getData()) print(head.getData()) if head.getRight(): head = head.getRight() s.push(head)