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)
def paren_checker(string): stack = Stack() for char in string: if char == '(': stack.push(char) elif char == ')': if stack.contains_items(): stack.pop() else: return 'Unbalanced' if stack.contains_items(): return 'Unbalanced' else: return 'Balanced'
def paren_checker(string): stack = Stack() for char in string: if char == "(": stack.push(char) elif char == ")": if stack.contains_items(): stack.pop() else: return "Unbalanced" if stack.contains_items(): return "Unbalanced" else: return "Balanced"
def general_checker(string): stack = Stack() opens = '([{<' closes = ')]}>' for char in string: if char in opens: stack.push(char) elif char in closes: if not stack.contains_items(): return "Stack prematurely empty. Unbalanced." else: prior = stack.pop() return match_checker(char, prior) # returns Balanced or Unbalanced if stack.contains_items(): return 'Unbalanced' else: return 'Balanced'
def general_checker(string): stack = Stack() opens = "([{<" closes = ")]}>" for char in string: if char in opens: stack.push(char) elif char in closes: if not stack.contains_items(): return "Stack prematurely empty. Unbalanced." else: prior = stack.pop() return match_checker(char, prior) # returns Balanced or Unbalanced if stack.contains_items(): return "Unbalanced" else: return "Balanced"