3 / 3 / 3
Регистрация: 03.11.2014
Сообщений: 80
|
||||||
1 | ||||||
Бинарное дерево: удаление элементов25.05.2015, 03:04. Показов 1473. Ответов 2
Метки нет Все метки)
(
Помогите пожалуйста реализовать удаление элементов бинарного дерево, добавление и вывод вроде сделал, а тут путаюсь
Бинарное дерево реализовано так, что у каждого элемента 2 потомка, левый меньше либо равен предку, а правый больше Тяжело просто сдвигать элементы вверх, если например удаляется предок, и при этом нужно его правый потомок поставить на место этого предка. в общем вот код, если нужно, помогите пожалуйста с удалением)
0
|
|
25.05.2015, 03:04 | |
Ответы с готовыми решениями:
2
Бинарное дерево. Поиск, вывод и удаление элементов из дерева Исходное бинарное дерево превратить в бинарное дерево поиска, при этом сохранив его структуру Бинарное дерево, удаление элемента
|
120 / 34 / 19
Регистрация: 19.03.2015
Сообщений: 90
|
|
25.05.2015, 08:46 | 2 |
Оформите код читабельным образом, так Вам быстрее помогут.
Добавлено через 2 часа 24 минуты Можно использовать рекурсивную функцию для удаления элементов. Мы не можем просто присвоить NULL отцу так как навсегда потеряем доступ к памяти выделенной под потомков. Алгоритм прост: Удаляя элемент мы идем сначала например налево, смотрим если там не NULL, значит снова идем налево, если там NULL то идем на право, если там тоже NULL то удаляем, так как мы успешно проверили потомка на потомков то удаляем его и по рекурсии поднимаемся обратно наверх, где мы первый раз пошли налево и идем на право, если там не NULL то повторяем алгоритм для правого, если NULL то смело удаляем. Таким образом мы освободим всю выделенную память под отца и потомков успешно удалив элемент. Так же рекомендую хранить в структуре данные об отце, заметно облегчит задачу. И еще Кликните здесь для просмотра всего текста
Написав new сразу пишите delete
0
|
3 / 3 / 3
Регистрация: 03.11.2014
Сообщений: 80
|
||||||
26.05.2015, 13:44 [ТС] | 3 | |||||
Пытаюсь удалить хотя бы лист, просто чтобы он его больше не выводил, но выдает ошибку, помогите разобраться
0
|
26.05.2015, 13:44 | |
Помогаю со студенческими работами здесь
3
Бинарное дерево поиска (удаление, добавление элемента) Бинарное дерево, удаление звеньев числом меньше заданного
Бинарное дерево поиска (Количество элементов) Перемещение элементов массива на бинарное дерево Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |