Большая задача — решающее дерево.
Простыми словами: это игра «угадай животное». В каждом узле дерева — вопрос.
Ответ «да» ведёт в левую ветку, «нет» — в правую. В конце ветки (в листе) — ответ.
- Node(text) — узел: вопрос или ответ; свойства left и right (ветки «да» и «нет»).
- DecisionTree:
- add(parent, node, left=True) — прицепить node к parent слева или справа;
- predict(root, answers) — пройти по дереву, взяв ответы из списка
(True — да, False — нет), и вернуть текст листа.
Большая задача. Не торопись: разбей её на шаги, напиши сначала один класс, проверь его, потом следующий. Готовое решение — после RUN.
Вопрос: Кого угадает дерево для ответов [True, False]?
Объяснение:
- Корень: «Живёт в воде?»
- True → левая ветка: «Есть плавники?»
- False → правая ветка от неё: «Лягушка»
- Лист — это узел, у которого нет ни left, ни right
ИИ-помощник закреплён справа внизу. Откройте чат и задайте вопрос по текущему уроку — контекст подставится автоматически.
- «Объясни, зачем нужен id()»
- «Почему не компилируется мой код?»
- «Дай подсказку без полного решения»