summaryrefslogtreecommitdiff
path: root/hw/activity20h.py
diff options
context:
space:
mode:
Diffstat (limited to 'hw/activity20h.py')
-rw-r--r--hw/activity20h.py28
1 files changed, 28 insertions, 0 deletions
diff --git a/hw/activity20h.py b/hw/activity20h.py
new file mode 100644
index 0000000..8bf0319
--- /dev/null
+++ b/hw/activity20h.py
@@ -0,0 +1,28 @@
+class TreeNode:
+ def __init__(self, value):
+ self.value = value
+ self.left = None
+ self.right = None
+ def insert(self, v):
+ left = True if v < self.value else False
+ if left:
+ print(f"Inserting to the left because {v} < self value = {self.value}")
+ if self.left != None:
+ self.left.insert(v)
+ else:
+ self.left = TreeNode(v)
+ else:
+ print(f"Inserting to the right because {v} >= self value = {self.value}")
+ if self.right != None:
+ self.right.insert(v)
+ else:
+ self.right = TreeNode(v)
+class Tree:
+ def __init__(self, root_value):
+ self.root = TreeNode(root_value)
+ def insert(self, v):
+ self.root.insert(v)
+t = Tree(27)
+l = [19, 36, 42, 16]
+for i in l:
+ t.insert(i)