Задача Leetcode 1038. От двоичного дерева поиска к дереву большей суммы --> PythonPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Задача Leetcode 1038. От двоичного дерева поиска к дереву большей суммы --> Python

Сообщение Anonymous »

Я решаю описанную выше задачу с лит-кодом на Python. Обычно я решаю проблему в блокноте Jupyter, а затем копирую и вставляю ее в поле решения лит-кода, как только закончу с ней. Однако у меня возникли проблемы с этой проблемой.
Определение проблемы определено ниже:
Учитывается корень двоичного дерева поиска (BST). , преобразуйте его в большое дерево так, чтобы каждый ключ исходного BST заменялся исходным ключом плюс сумма всех ключей, больших, чем исходный ключ в BST.
Напоминаем, Дерево двоичного поиска — это дерево, которое удовлетворяет следующим ограничениям:
Левое поддерево узла содержит только узлы с ключами, меньшими, чем ключ узла.
Правое поддерево узла содержит только узлы с ключами, превышающими ключ узла.
И левое, и правое поддеревья также должны быть деревьями двоичного поиска.
Пример ввода и вывода для задачи показан ниже< /h3>

Код: Выделить всё

Input: root = [4,1,6,0,2,5,7,null,null,null,3,null,null,null,8]
Output: [30,36,21,36,35,26,15,null,null,null,33,null,null,null,8]
При этом решение задачи строится следующим образом

Код: Выделить всё

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:
def bstToGst(self, root: TreeNode) -> TreeNode:
Я не понимаю, как подойти к этой проблеме. Сначала я думал, что пройдусь по предоставленному списку. Однако, прочитав некоторые примеры ответов из обсуждения, я увидел, что используются такие команды, как root.right и root.left. Как мне это сделать в блокноте Jupyter? У меня нет опыта работы с TreeNodes, поэтому я хочу решить эту проблему правильно и изучить фундаментальную концепцию вместо того, чтобы грубо решать ее другим способом. Мы очень ценим любую помощь.
Спасибо

Подробнее здесь: https://stackoverflow.com/questions/660 ... ree-python
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»