I know the title is a bit misleading, because this is just not possible. It is, however, what I would like to do, one way or another. I'm keeping a high score list, the keys being the names, the values the scores. Whenever someone submits a new score, that score is being added to the dictionary. However, I want to sort (descending) that dictionary when I'm displaying the scores, so that the highest score is up top. Now, I know this is not possible using NSDictionary, but what would be a good and efficient way to do this? I open for anything, the names and scores are being stored in NSUserDefaults, so anything that NSUserDefaults can handle, I can handle. I don't think I really need code (unless it gets really involved, then some code may help), but a general idea of how to implement this would be awesome!