Tipos de Coleção SortedList e SortedDictionary

A classe System.Collections.SortedList, a classe genérica System.Collections.Generic.SortedList<TKey, TValue>, e a classe genérica System.Collections.Generic.SortedDictionary<TKey, TValue> são semelhantes à classe Hashtable e à classe genérica Dictionary<TKey, TValue>, as quais implementam a interface IDictionary, mas mantêm seus elementos em ordem de classificação por chave, e não têm inserção O(1) e recuperação característica das tabelas de hash.As três classes têm várias características em comum:

A tabela a seguir lista algumas das diferenças entre as duas classes de listas ordenadas e a classe SortedDictionary<TKey, TValue>.

Classe não genérica SortedList e classe genérica SortedList<TKey, TValue>.

Classe genérica SortedDictionary<TKey, TValue>.

As propriedades que retornam chaves e valores são indexadas, permitindo recuperação indexada eficiente.

Recuperação não indexada.

Recuperação é O(logn).

Recuperação é O(logn).

Inserção e remoção são geralmente O (n); no entanto, inserção é O(1) para dados que já estejam em ordem de classificação, assim, cada elemento é adicionado ao fim da lista.(Isso pressupõe que um redimensionamento não é necessário.)

Inserção e remoção são O(logn).

Utiliza menos memória que um SortedDictionary<TKey, TValue>.

Usa mais memória do que a classe não genérica SortedList e a classe genérica SortedList<TKey, TValue> .

Observação:

Valores que contenham suas próprias chaves (por exemplo, a registros de funcionários que contêm um número de ID do funcionário), você pode criar uma coleção com chave que tem algumas características de uma lista e algumas características de um dicionário, derivando da KeyedCollection<TKey, TItem> classe genérica.

Consulte também

Referência

System.Collections.SortedList

System.Collections.Generic.SortedList<TKey, TValue>

System.Collections.IDictionary

System.Collections.Generic.IDictionary<TKey, TValue>

Outros recursos

Tipos de Coleção Comumente Usadas