Какова сложность OrderedDictionary?

Никто не сказал, что OrderedDictionary имеет две копии элементов: одну в хэш-таблице и другую в списке, я не могу найти измерения сложности в MSDN для OrderedList.

спасибо

Ответы

Ответ 1

Посмотрите

OrderedDictionary: общая реализация IOrderedDictionary

Эта реализация упорядоченного словарь очень хорош в поиске операции: массив допускает O (1) поиск по индексу и хэш-таблица позволяет O (1) искать по ключу. Однако, необходимость сохранения массива синхронизируется с хэш-таблицей что операции вставки/удаления имеют невыгодность выполнения эти операции над массивом (O (n) at наихудший). Существует также, конечно, дополнительная потребность в памяти для хранения обе структуры данных. Из-за этих недостатки, OrderedDictionary следует использовать только при вставке/удалении операции будут минимальными, и является необходимость эффективного доступа элементы по индексу и/или клавише.