Алгоритм удаления из BST (дерева бинарного поиска)
Данный алгоритм очень схож с алгоритмом поиска. Поэтому по идее проблем с его пониманием не должно возникнуть. Кроме того, а что если у данного узла(что мы удаляем) - есть дочерние узлы. Что же, давайте рассмотрим данный алгоритм.
1. Находим узел который собираемся удалить и удаляем
2. Если у удаляемого узла есть только один дочерний элемент, то скопируйте дочерний элемент в узел(где находился ваш удаляемый элемент), и удалите дочерний элемент у него.
3. Если два дочерних узла. Найдите в порядке приемника необходимый узел из двух дочерних. Скопируйте содержимое приемника и удалите приемника. Не забудьте правильно расположить 2 дочерний элемент, ведь он станет теперь дочерним для перемещенного приемника!
Data Science: Алгоритмы и Структуры данных
Данный алгоритм очень схож с алгоритмом поиска. Поэтому по идее проблем с его пониманием не должно возникнуть. Кроме того, а что если у данного узла(что мы удаляем) - есть дочерние узлы. Что же, давайте рассмотрим данный алгоритм.
1. Находим узел который собираемся удалить и удаляем
2. Если у удаляемого узла есть только один дочерний элемент, то скопируйте дочерний элемент в узел(где находился ваш удаляемый элемент), и удалите дочерний элемент у него.
3. Если два дочерних узла. Найдите в порядке приемника необходимый узел из двух дочерних. Скопируйте содержимое приемника и удалите приемника. Не забудьте правильно расположить 2 дочерний элемент, ведь он станет теперь дочерним для перемещенного приемника!
Data Science: Алгоритмы и Структуры данных