Можно ли идентифицировать последовательности, для которых не существует бинарного дерева с учетом двух обходов (пример: в порядке и обход после ордера)?Проверка двоичного дерева с использованием заданного обхода
Я понимаю, что последний элемент обхода послепорядка или первый элемент обхода предварительного заказа - это корень дерева. Используя такие основные факты, можно ли тестировать эти массивы без фактического построения дерева и выяснить, производят ли они одно и то же дерево?
У меня есть алгоритм, который может построить дерево из этих двух последовательностей (внутри и после), но я не хочу запускать алгоритм, если есть способ проверить массивы заранее. Это позволит сэкономить много времени, а не запустить алгоритм и выяснить в конце.
Примечание: Это НЕ должно быть двоичное дерево поиска. Бинарного дерева будет достаточно.
Я не понимаю - не может ли любая последовательность храниться в двоичном дереве? –
Да, но если вам дано в порядке и обход по порядку в качестве двух ваших последовательностей, как вы можете определить, происходят ли они из одного дерева? – user3270760
Так ясно. –