我想有這樣根據在C#中的字符串值的長度排序字典
dict1 = {{[4,bcefgh]},{[5,abcefgh]},{[6,efgh]},{[7,bcefgh]},{[10,cefghi]}}
我想根據字符串值的長度,在這本詞典對排序,而無需使用額外的環路一本字典,那就是結果應該是:
dict1 = {{[6,efgh]},{[4,bcefgh]},{[7,bcefgh]},{[10,cefghi]},{[5,abcefgh]}}
我最初的答案是創建一個單獨的字典,有同樣的密鑰和相應的每個串的長度和遍歷對三分之一字典如下:
foreach (KeyValuePair<int,string> pair in dict1)
{
temp_dict.Add(pair.Key, pair.Value.Count());
}
var items = from pair in temp_dict
orderby pair.Value ascending
select pair;
foreach (KeyValuePair<int, int> pair in items)
{
result_dict.Add(pair.Key, dict1[pair.Key]);
}
但是,這一結果是現在的大數據集實用。
非常感謝
不光是不切實際的,這是不正確。 'Dictionary'不保留項 – 2014-09-03 22:12:59