首頁 > 後端開發 > C++ > 如何使用LINQ有效地按值對字典進行分類?

如何使用LINQ有效地按值對字典進行分類?

Linda Hamilton
發布: 2025-01-28 08:07:09
原創
893 人瀏覽過

How Can I Efficiently Sort a Dictionary by Value Using LINQ?

LINQ高效字典值排序

程序開發中,經常需要根據字典的值進行排序。例如,一個字典存儲單詞及其出現頻率,需要按頻率降序排列。

雖然SortedList可以對單個值(如頻率)排序,但它無法直接映射回原始鍵。而SortedDictionary是根據鍵排序的,自定義類實現起來比較繁瑣。

LINQ提供了一種優雅的解決方案:

Dictionary<string, int> myDict = new Dictionary<string, int>();
myDict.Add("one", 1);
myDict.Add("four", 4);
myDict.Add("two", 2);
myDict.Add("three", 3);

var sortedDict = from entry in myDict orderby entry.Value ascending select entry;
登入後複製

這段代碼創建一個新的字典sortedDict,其鍵值對按值的升序排列。它允許根據不同的條件進行排序,或選擇排序字典的特定部分。例如,要查找前10個最頻繁的單詞,可以使用:

var top10 = sortedDict.Take(10);
登入後複製

以上是如何使用LINQ有效地按值對字典進行分類?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板