Подсчет слов из текстового файла с использованием дерева узлов Python - PullRequest
0 голосов
/ 14 марта 2019
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()

Мне нужна помощь с этим!

Так что это мой код, и он распечатывает каждое слово, которое я вставил, и частоту каждого слова, которое я произнес. Я предполагаю использовать это, чтобы я мог взять текстовый файл и разбить каждую строку текстового файла на слова, а затем отсортировать его, используя это дерево узлов. У меня также есть проблема с тем, как это напечатать. Я должен написать рекурсивную процедуру для печати дерева, начиная с корня. Таким образом, порядок идет: выведите дерево, расположенное слева, затем данные в корне, затем правое поддерево корня.


Пример текстового файла содержит: Маленький Бо Пип Потеряла овец И не знает, где их найти. Оставь их! Они придут домой. Виляя их рассказами за ними.


Вывод должен выглядеть так: выход

...