class Node:
def __init__(self, data):
self.left = None
self.right = None
self.data = data
self.count = 1
def insert(self, data):
if self.data:
if self.data == data:
self.count += 1
return
if data < self.data:
if self.left is None:
self.left = Node(data)
else:
self.left.insert(data)
elif data > self.data:
if self.right is None:
self.right = Node(data)
else:
self.right.insert(data)
else:
self.data = data
def PrintTree(self):
if self.left:
self.left.PrintTree()
print( self.data, "("+str(self.count)+")")
if self.right:
self.right.PrintTree()
这是我的代码,它打印出我插入的每个单词以及输入的每个单词的频率。我想使用它来获取文本文件并将文本文件的每一行分解为单词,然后使用此节点树对其进行排序。我也有如何打印此问题。我必须编写一个递归例程以从根开始打印树。因此,顺序将打印树,该树位于左侧,然后是根中的数据,然后是根的右子树。
示例文本文件包含: 小波普 失去了她的羊 而且不知道在哪里可以找到它们。 别管他们! 他们会回家。 在他们背后摇摆他们的故事。
输出应如下所示: output