Почему не работает рекурсивная фунция

Пытался реализовать алгоритм Хаффмана, но рекурсия не работает. На номера индексов можно не смотреть, сам их подправлю, но главная проблема в том, что при запуске выдаёт

NameError: name 'alg_Haffman' is not defined

Сама функция:

def alg_Haffman(self, index_Haffmana=0, start_index=0, end_index=0):
    self.index_Haffmana = index_Haffmana
    if end_index == 0:
        self.end_index = len(self.text_in)
    if start_index == 0:
        self.start_index = self.index_Haffmana
    self.text_in_sum_num = sum(self.text_in_num_symb_help1)
    self.text_in_sum_num_left = sum(self.text_in_num_symb_help1[:self.index_Haffmana])
    if self.start_index + 1 < self.end_index:
        if self.text_in_sum_num_left >= self.text_in_sum_num - self.text_in_sum_num_left:
            self.idex_Haffmana -= 1
            for i in range(self.end_index - self.start_index):
                if i < self.idex_Haffmana and i >= self.start_index:
                    self.text_in_alf[self.start_index + i][1] += "0"
                if i >= self.idex_Haffmana and i <= self.end_index:
                    self.text_in_alf[self.start_index + i][1] += "1"
        else:
            self.index_Haffmana += 1
        alg_Haffman(self.start_index, self.index_Haffmana)
        alg_Haffman(self.index_Haffmana + 1, self.end_index)

Ответы (0 шт):