c# Dictionary< char, int>选取值最大的键

本文关键字:选取 Dictionary char int | 更新日期: 2023-09-27 18:17:31

我有一个Dictionary<char, int> charstat来计算字符的出现次数。我想从这个字典中得到5个最常见的字符计数。我们该怎么做呢?

一些示例数据:

 <'T', 1>
 <'A', 2>
 <'C', 5>
 <'Q', 10>
 <'B', 3>
 <'Z', 7>

从这里我想得到最大计数的顺序:

Q
Z
C
B
A

c# Dictionary< char, int>选取值最大的键

我想从这个字典中得到5个最常见的字符计数。

var item = charstat.OrderByDescending(r => r.Value)
                          .Select(r => r.Key)
                          .Take(5);
  Dictionary<char, int> dir = new Dictionary<char, int>();
  // ...
  var query = (from p in dir
              orderby p.Value descending
              select p).Take(5);
  foreach (var item in query) {
    Console.Out.WriteLine("Char: {0}, Count: {1}", item.Key, item.Value);
  }