Задать вопрос
@Timak31
студент

Что это за язык програмирования и что такое Т?

Не знаю что это за язык програмирования. Хочу написать такую структуру на python или что то подобное. И что такое Т?
880f7e0708f541efb6edfb7e492cce6c.pngc8eea6da5c9a46c68e58e9be26ba42f0.png
Зарание спасибо.
  • Вопрос задан
  • 564 просмотра
Подписаться 1 Оценить Комментировать
Решения вопроса 1
@fireSparrow
Про язык сказать не могу, но это явно что-то строго типизированное и T - это какой-то тип. Питон не является строготипизированным языком, тип в нём не указывается, поэтому вам вообще не обязательно знать, что такое Т, чтобы написать что-то подобное на питоне.

И структур в питоне нет, ближайший аналог - namedtuple.
Но я предлагаю делать через обычный класс, а inorderTraversal сделать его методом.
Ответ написан
Пригласить эксперта
Ответы на вопрос 4
chupasaurus
@chupasaurus
Сею рефлекторное, злое, временное
И никто не подумал о том, что это просто псевдокод с намешиванием синтаксиса нескольких языков?
Ответ написан
Комментировать
Тип T это произвольный тип. Структура описывает узел дерева, который может хранить какой-то тип.

Для дерева строк вместо T подставится String, для дерева целых чисел - Int и т.д.

Тип Node это полиморфный тип (параметрический полиморфизм).
В C++ это реализуют шаблоны, в Java - generics.
Ответ написан
@DuD
Могу ошибаться, но похож на Go.
Ответ написан
lxsmkv
@lxsmkv
Test automation engineer
class Node:
  def __init__(self, value):
    self.value = value
    self.left = None
    self.right = None
  
  def __str__(self):
    return self.value

r'''

A-B
 \
  C - E
   \
    D

'''

root = Node("A")
root.left = Node("B")
root.right = Node("C")
root.right.right = Node("D")
root.right.left = Node("E")


def iot(node):
  if node is not None:
    iot(node.left)
    print node
    iot(node.right)
  
iot(root)

результат

B
A
E
C
D
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы