added some recursive datastructures

This commit is contained in:
2024-02-14 18:44:59 +01:00
parent 36b6a78833
commit 4c5d27e8d1
9 changed files with 416 additions and 0 deletions

@ -0,0 +1,13 @@
from trees import Node, traverse, TraversalType
def test_traverse():
tree = Node(1, Node(2, Node(3, None, None), Node(4, Node(
5, None, None), None)), Node(6, Node(7, None, None), Node(8, None, None)))
assert ", ".join(map(lambda x: str(x), traverse(tree))
) == "3, 2, 5, 4, 1, 7, 6, 8"
assert ", ".join(map(lambda x: str(x), traverse(
tree, TraversalType.PREORDER))) == "1, 2, 3, 4, 5, 6, 7, 8"
assert ", ".join(map(lambda x: str(x), traverse(
tree, TraversalType.POSTORDER))) == "3, 5, 4, 2, 7, 8, 6, 1"