gpt4 book ai didi

c# - 按值对字典(字符串,整数)进行排序

转载 作者:可可西里 更新时间:2023-11-01 07:50:27 24 4
gpt4 key购买 nike

所以基本上我对交给我的任务有疑问。我不会让您厌烦任务本身的细节,所以我只会为您提供相关信息。

我有一本字典,我需要按最高的 int[value] 排序,准确地说是前五名,我还需要能够显示后五名。

Dictionary<string, int> dict = new Dictionary<string, int>();

字符串(键)包含已为文本文件读取的单词。整数(值)保存它们在文档中被提及的次数。

我本来打算用另一种方式来做,但有人告诉我要用字典来做,所以请字典帮忙。如果您能解释应该如何完成,我将不胜感激,这样我就可以学习并完成任务,因为该任务的目的是 self 教育,但我发现它有点困难..

非常感谢您提前提供的所有帮助,如果需要更多信息,请告诉我,我会发布!

最佳答案

字典没有任何固有的顺序。但是如果你想获得最高(或最低)值的前 5 个条目,你可以使用一点 Linq:

using System.Linq;

...

var top5 = dict.OrderByDescending(pair => pair.Value).Take(5);
var bottom5 = dict.OrderBy(pair => pair.Value).Take(5);

这将返回 IEnumerable<KeyValuePair<string, int>> .要将其变回字典,Linq 再次可以提供帮助。例如:

var top5 = dict.OrderByDescending(pair => pair.Value).Take(5)
.ToDictionary(pair => pair.Key, pair => pair.Value);

现在,top5Dictionary<string, int>其中仅包含 dict 中的 5 个元素具有最高值。

关于c# - 按值对字典(字符串,整数)进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21411384/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com