Результаты поиска по запросу "binary-tree"
И пример
аем, как проходить предварительный заказ, порядок и пост-заказ. Какой алгоритм будет реконструировать BST?
null, тогда алгоритм гарантирует, что исходное дерево восстановлено, и затем продолжает обход в правом поддереве (в этом случае известно, что было посещено левое поддерево).
кто-нибудь помочь мне понять следующий алгоритм обхода дерева Морриса без использования стеков или рекурсии? Я пытался понять, как это работает, но это просто ускользает от меня. 1. Initialize current as root 2. While current is not NULL If ...
Используйте эту функцию для достижения желаемого узла:
му я пытаюсь реализовать двоичную кучу мин. Я понимаю, что влечет двоичная минимальная куча с точки зрения ее структуры и ее свойств. Однако я пытаюсь реализовать стену, используя указатели и узлы. Я используюNode, у которого естьright/left and ...
Это тестовые методы, они вам на самом деле не нужны. И их легко реализовать в любом случае.
могу получить дерево из этих пре / в порядке обхода: Предварительно: A, B, D, E, C, F, G, H в: E, D, B, A, G, F, H, C Отредактировано: мой ответ A / \ B C / \ D F / / \ E G H
Если вам нужно решение, которое изменяется только на месте, когда оно действительно, и в противном случае меняет структуру карты:
имаю причины, почему нельзя просто сделать это (ребалансировка и прочее): iterator i = m.find(33); if (i != m.end()) i->first = 22;Но пока единственный способ (я знаю о) изменить ключ - это полностью удалить узел из дерева, а затем вставить ...
Пример использования:
я возникли некоторые проблемы с моим методом вставки для связанного списка в C. Кажется, он добавляется только в начале списка. Любая другая вставка, которую я делаю, терпит неудачу. И этот отладчик CodeBlocks так сложно понять, что я до сих пор ...
Преобразование двоичного дерева с использованием поворотов
Пока я изучал среднесрочные вопросы о двоичных деревьях, я нашел утверждение, что любое произвольное двоичное дерево с n-узлами может быть преобразовано в любое другое двоичное дерево с n-узлами с максимум 2 * n-2 вращениями. Есть ...
На самом деле, старайтесь избегать рекурсивности. Если у вас большая древовидная структура, вы получите ошибку переполнения стека. Вместо этого вы можете использовать список:
аюсь найти узел в двоичном дереве и вернуть его, если он есть, в противном случае вернуть ноль. Между прочим, у класса узла есть метод name (), который возвращает строку со своим именем ... То, что у меня пока есть: private Node search(String ...
находятся в O (N).
приведен мой алгоритм поиска первого общего предка. Но я не знаю, как рассчитать сложность времени, кто-нибудь может помочь? public Tree commonAncestor(Tree root, Tree p, Tree q) { if (covers(root.left, p) && covers(root.left, q)) return ...
Модульные тесты
вопрос был задан мне в одном из интервью: у меня есть двоичное дерево, и мне нужно найти общего предка (родителя) по двум случайным узлам этого дерева. Мне также дают указатель на корневой узел. Мой ответ: Обходите дерево отдельно для обоих ...