Un dictionnaire n'est pas une structure de données ordonnée. Pour Reverse avoir une signification réelle, vous aurez besoin d'utiliser un SortedDictionary. Vous pouvez obtenir une copie inversée d'un SortedDictionary en en créant une nouvelle avec un Comparer qui fait le tri opposé à l'original (voir constructor).
var reversed = new SortedDictionary(original, new ReverseKeyComparer());
Notez que ReverseKeyComparer
est une classe fictique pour l'exemple.
aussi - vous avez besoin de savoir que le SortedDictionary est un peu un abus de langage, si vous assimilez Dictionnaire carte ou Hashtable. Il utilise une implémentation d'arbre binaire (Red-Black, je pense) avec une complexité algorithmique différente de l'implémentation hashtable de Dictionary. Voir les sections Remarques de leurs pages de documentation respectives. Si la performance est critique, vous pourriez vouloir considérer si la commande est vraiment importante.
Hahahahha +1 pour ** arrêt **. xD – Cipi
Cette réponse est amusante, mais @ tvanfossons est plus informative. –
@Vinko Vrsalovic: Il n'y a rien de drôle dans ma réponse. Je suis vraiment sérieux. – leppie