Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > списки и "сбор мусора"


Автор: Akeem_dek 2.4.2005, 21:27
Помогите разобратся с указаной темой! Пожалуйста! smile

Автор: Domestic Cat 2.4.2005, 21:30
А конкретнее нельзя?

Автор: Akeem_prog 2.4.2005, 21:43
у меня тема курсовой работы такая!
"списки и "сбор мусора"!"
первое понятно, а со вторым я не знаю что делать?

Добавлено @ 21:45
Akeem_dek - это мой незарегестрированое имя! Звынайте!

Автор: poor_yorik 3.4.2005, 15:35
Смысл такой, когда ты реализуешь список не как динамическую структуру, а как два массива. Один массив непосредственно означает список. Другой массив для каждого элемента показывает индекс в массиве, где находится следующий элемент, и индекс где находится предыдущий элемент (для двусвязного списка). Когда мы удаляем элемент из списка, то мы просто для предыдущего элемента, меняем индекс следующего элемента:
Mas[mas[i].last].next:=mas[i].next;
Когда мы удалим много элементов из массива, у нас возникает проблема, что остается несипользованное пространство, котое не используется. Это и называется "мусором". Сбор мусора осуществляется последавтельным сдвигом всех элементов массива, следующих за пустым местом, на одну позицию влево.
Насколько я знаю, в динамических списках таких проблем возникнуть не должно... smile

Автор: Akeem_prog 3.4.2005, 15:58
Спасибо за подсказку!
Теперь осталось всё это описать с помощью предикатов! smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)