Вы могли сделать задержанное отделение, где Вы устанавливаете узлы, которые будут отделяться из списка с флагом и затем удалят их на следующем надлежащем обходе. Набор узлов, который будет отделяться, должен был бы быть правильно обработан кодом, который проверяет список.
я предполагаю, что Вы могли также просто пересечь список снова с начала, пока Вы не находите вещь, которая указывает на Ваш объект в списке. Едва оптимальный, но по крайней мере намного лучшая идея, чем задержанное отделение.
В целом, необходимо знать указатель на объект, из которого Вы просто произошли, и необходимо раздавать это.
(Редактирование: Ick, со временем, это взяло меня для вывода fullish, отвечают трем огромному количеству человек, застрахованных почти все моменты, которые я собирался упомянуть.: ()
Я переключился со схемы MIT на DrScheme именно потому, что не смог получить версию MIT, работающую в 64-битной Windows. Я запускаю DrScheme с выбранным языковым "модулем" для выполнения упражнений SICP.