def test_breadth_first_traverse_on_one_level_tree(self): node1 = TreeNode('1') node11 = node1.add_child('11') node12 = node1.add_child('12') node13 = node1.add_child('13') node1.breadth_first_traverse(self.node_visitor) self.assertEqual([node1, node11, node12, node13], self.visited_nodes)
def test_breadth_first_traverse_on_one_level_tree(self): node1 = TreeNode('1') node11 = node1.set_left('11') node12 = node1.set_right('12') node1.breadth_first_traverse(self.node_visitor) self.assertEqual([ node1, node11, node12 ], self.visited_nodes)
def test_breadth_first_traverse_on_five_level_chain_tree(self): node1 = TreeNode('1') node11 = node1.add_child('11') node111 = node11.add_child('111') node1111 = node111.add_child('1111') node11111 = node1111.add_child('11111') node111111 = node11111.add_child('111111') node1.breadth_first_traverse(self.node_visitor) self.assertEqual( [node1, node11, node111, node1111, node11111, node111111], self.visited_nodes)
def test_breadth_first_traverse_on_one_node(self): node = TreeNode('a') node.breadth_first_traverse(self.node_visitor) self.assertEqual([node], self.visited_nodes)
root.display() print('***** DEPTH-FIRST GENERATOR ITERATION *****') for node in root.depth_first_traverse_gen(): print(node) print('***** DEPTH-FIRST ITERATION *****') root.depth_first_traverse(print) print('***** BREADTH-FIRST GENERATOR ITERATION *****') for node in root.breadth_first_traverse_gen(): print(node) print('***** BREADTH-FIRST ITERATION *****') root.breadth_first_traverse(print) print('***** HEIGHT *****') print(node12111.height) print(node1211.height) print(node121.height) print(node122.height) print(node11.height) print(node12.height) print(node13.height) print(node1.height) print(node2.height) print(node21.height) print(root.height) print('***** SIZE *****')