Мне нужна помощь в поиске пути от корня к узлу в двоичном несортированном дереве. Я пытаюсь пройти предварительный обход и нажимать узлы в стеке, но я всегда получаю больше узлов, чем фактический путь.найти путь в двоичном несортированном дереве
ответ
Хорошим способом для этого является привязка в каждом узле ссылок родителя, а затем, если вы можете получить доступ к сборке узлов, путь прост, вам нужно пройти через всех родителей и построить путь. Если у вас нет доступа к узлу, и только у вас есть корень дерева, вам нужно искать во всех возможных поддеревах, то есть потому, что дерево не сортировано. Затем вы можете использовать предварительный заказ, порядок после заказа для DFS (Deep First Search) или реализовать некоторый BFS (первый поиск по ширине) с использованием очереди.
Надеюсь, это может вам помочь ...
Моя идея состояла в том, чтобы найти путь от корня к корню, используя один из поиска dfs. Но каждый раз, когда я использую один из обходов, если узел находится в правом поддереве корня, путь сначала находит те, что находятся в левом поддереве корня, чем справа, поэтому путь выходит неправильно. Кстати, у меня есть только доступ к корню. – Alek
- 1. Поиск двух строк в несортированном двоичном дереве
- 2. Поиск строки в несортированном двоичном дереве
- 3. Путь схемы в двоичном дереве
- 4. Рекурсивно найти путь к узлу в двоичном дереве
- 5. Путь в двоичном дереве - Пролог
- 6. Найти максимальную сумму листа в корневой путь в двоичном дереве
- 7. Найти сумму кратчайшего корня в путь листа в двоичном дереве
- 8. Как найти путь между двумя данными узлами в двоичном дереве
- 9. Наименьший путь значения в двоичном дереве поиска
- 10. Путь к узлу в двоичном дереве
- 11. найти уникальные элементы в двоичном дереве
- 12. Как найти листовой узел в двоичном дереве NOT SORTED
- 13. Поиск в несортированном дереве рекурсивно
- 14. Как найти определенный узел в двоичном дереве?
- 15. Найти правых детей в двоичном дереве java
- 16. Найти уровень ключа в двоичном дереве поиска
- 17. Найти родителя в двоичном дереве поиска?
- 18. Найти самый низкий лист в двоичном дереве
- 19. Как найти узел в двоичном дереве поиска
- 20. Найти максимальный элемент в двоичном дереве
- 21. Как найти элемент в двоичном дереве поиска?
- 22. Вставить/найти проблемы в двоичном дереве
- 23. Найти местоположение узлов в двоичном дереве
- 24. Найти родителя заданного ключа в двоичном дереве
- 25. Как найти внутренние узлы в двоичном дереве?
- 26. Рекурсия в двоичном дереве
- 27. Вставка в двоичном дереве поиска против вставки в двоичном дереве
- 28. Как найти числа, меньшие, чем N в несортированном дереве
- 29. Количество листьев в двоичном дереве
- 30. Поиск узла в двоичном дереве
Это звучит как ошибка реализации, так что, возможно, вы можете опубликовать код? –
Вы хотите найти самый короткий путь? Возможно, отредактируйте свой титул. –
Дерево не «толкает» узлы в «стек»; он вставляет их. Это похоже на реализацию, а не на дизайн; вы могли бы поделиться каким-то кодом? – Makoto