Какова оптимальная структура данных для хранения объектов со строковым ключом и вспомогательным значением bool?C#

Место общения программистов C#
Ответить
Anonymous
 Какова оптимальная структура данных для хранения объектов со строковым ключом и вспомогательным значением bool?

Сообщение Anonymous »

Мне нужна структура данных, как показано ниже, но мне нужно иметь возможность изменять значение bool. Два других остаются такими же, какими они были при инициализации. Что бы вы использовали для достижения наилучшей производительности?

Код: Выделить всё

Dictionary dic = new Dictionary();
Я думал о хеш-таблице. Но хэш-таблица похожа на словарь с ключом/значением. Объект и bool в моем примере концептуально не похожи на ключ/значение, поскольку другие значения внешнего словаря могут иметь тот же объект (или, что еще лучше... тип объекта). Я не хочу, чтобы кто-то, просматривая мой код, позже подумал, что объект и логическое значение более связаны, чем они есть на самом деле.
РЕДАКТИРОВАТЬ: объект в этом примере — это просто заполнитель. На самом деле это сложный объект, в котором есть другие объекты и так далее. Процедура, предшествующая этой, создает кучу этих объектов, и некоторые из них являются глубокими копиями других. Они передаются на эту процедуру. Здесь все объекты именуются по некоторым правилам и сохраняются в словаре. Имена, очевидно, уникальные. Последующая процедура возьмет этот словарь и установит и выключит значение bool на основе значений в самих объектах и ​​значениях других логических значений. Процедура будет рекурсивной до тех пор, пока не будет достигнуто определенное состояние.
Количество объектов (или двоичных записей) произвольно, но ожидается, что оно будет >100 &&

Подробнее здесь: https://stackoverflow.com/questions/754 ... ey-and-a-b
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»