0
Ich hatte Binärbäume in C++ gemacht und versuchte, eine BST in Python zu machen, so schrieb ich den Code wie unten gezeigt. Aber, nichts wird angezeigt! Ich weiß nicht, was passiert.Nicht benötigte Ergebnisse in binären Suchbaum (BST) in Python
class Node:
def __init__(self, value, left=None, right=None):
self.left = left
self.right = right
self.value = value
pass
class Tree:
def __init__(self):
self.root = None
pass
def createNode(self, val):
return Node(val)
def insert(self, value):
self.__insert(self.root, value)
def __insert(self, rootptr, val):
if rootptr is None:
rootptr = self.createNode(val)
return 0
elif val < rootptr.value:
if rootptr.left is not None:
self.__insert(rootptr.left, val)
else:
rootptr.left = self.createNode(val)
elif val > rootptr.value:
if rootptr.right is not None:
self.__insert(rootptr.right, val)
else:
rootptr.right = self.createNode(val)
else:
#TODO: raise exception
print("Duplicate value!")
def traversePreorder(self):
self.__traversePreorder(self.root)
def __traversePreorder(self, rootptr):
if rootptr is None:
return 1
print(rootptr.value)
self.__traversePreorder(rootptr.left)
self.__traversePreorder(rootptr.right)
mytree = Tree()
mytree.insert(1)
mytree.insert(2)
mytree.insert(2)
mytree.insert(4)
mytree.insert(5)
mytree.traversePreorder()
habe ich versucht, eine Menge zwickt hier und da aber zu meiner Frustration nichts worked.Any Hilfe appreciated.Thank Sie wäre.