Есть набор из нескольких тысяч объектов. У каждого объекта есть связи с другим объектами из набора, причём связи взаимные. Как бы вы реализовали запись и сохранение таких связей?
Пока представляется так: нумеруем все объекты от 0 до N, сохраняем в виде: номер_объекта параметры_объекта номера_привязанных_объектов. При загрузке делаем обратную операцию, то есть добавляем все объекты, запоминая соответствия адресов в памяти и номеров объектов, после чего преобразуем во всех объектах номера привязанных объектов в адреса в памяти.
Есть ещё варианты?