Привет, у меня есть вопрос, в котором мне нужно описать алгоритм, который получает 2 дерева двоичного поиска, T1 и T2. Деревья содержат разные значения для каждого узла. И алгоритм должен возвращать дерево двоичного поиска той же формы, что и T2, но со значениями T1 и временной сложностью O(n)
, где n
- количество элементов (одинаково для обоих деревьев)
что мы называем «Равно топологическим» (я думаю, это так / хорошее название для этого)
Например:
T1 (определены значения)
![T1 Image](https://i.stack.imgur.com/z46Lm.png)
T2 (определил форму):
![T2 Image](https://i.stack.imgur.com/TVO6F.png)
Должен вернуться:
![The Resault](https://i.stack.imgur.com/UqXGZ.png)
What I ' Я пробовал до сих пор думать о среднем значении / среднем, однако это не работает каждый раз, или подумать о том, возможно, построить дерево AVL, а затем вращать его, пока мы не найдем решение, но я не имею в виду, сработает ли это, или имеет временную сложность O(n)
. Любая помощь будет оценена по достоинству! Спасибо!