MCPcopy Index your code
hub / github.com/ndleah/python-mini-project / Tree

Class Tree

Binary_tree/tree.py:4–59  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2
3# Class of tree
4class Tree:
5 def __init__(self):
6 self.root = None
7
8 # Method to obtain the data
9 def getRoot(self):
10 return self.root
11
12 # Method to add the data
13 def add(self, data):
14 if self.root is None:
15 self.root = Node(data)
16 else:
17 self._add(data, self.root)
18
19 def _add(self, data, node):
20 if data < node.data:
21 if node.left is not None:
22 self._add(data, node.left)
23 else:
24 node.left = Node(data)
25 else:
26 if node.right is not None:
27 self._add(data, node.right)
28 else:
29 node.right = Node(data)
30
31 # Method for find the data
32 def find(self, data):
33 if self.root is not None:
34 return self._find(data, self.root)
35 else:
36 return None
37
38 def _find(self, data, node):
39 if data == node.data:
40 return node
41 elif (data < node.data and node.left is not None):
42 return self._find(data, node.left)
43 elif (data > node.data and node.right is not None):
44 return self._find(data, node.right)
45
46 # Method for delete tree
47 def deleteTree(self):
48 self.root = None
49
50 # Method for print tree in terminal
51 def printTree(self):
52 if self.root is not None:
53 self._printTree(self.root)
54
55 def _printTree(self, node):
56 if node is not None:
57 self._printTree(node.left)
58 print(str(node.data) + ' ')
59 self._printTree(node.right)
60

Callers 1

main.pyFile · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected