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

Method removeHelper

Binary_Search_Tree/bst.py:56–81  ·  view source on GitHub ↗
(self,root,data)

Source from the content-addressed store, hash-verified

54
55
56 def removeHelper(self,root,data):
57 if root == None:
58 return "deletion failed: could not find value"
59
60 # adhering to typical bst properties
61 if root.val < data:
62 return self.removeHelper(root.right,data)
63 elif root.val > data:
64 return self.removeHelper(root.left,data)
65 else:
66 temp = root.val
67 v1 = float('-inf')
68 v2 = float('inf')
69 if root.left != None:
70 v1 = root.left.val
71 elif root.right != None:
72 v2 = root.right.val
73
74 if v1 > v2 or v2 == float('inf'):
75 root.val = root.left.val
76 root.left.val = temp
77 return self.restructdata(root.left)
78 else:
79 root.val = root.right.val
80 root.right.val = temp
81 return self.restructdata(root.right)
82
83 def remove(self,root,data):
84 if root == None:

Callers 1

removeMethod · 0.95

Calls 1

restructdataMethod · 0.95

Tested by

no test coverage detected