Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何通过LINQ选择队列中最频繁出现的值?_C#_Linq - Fatal编程技术网

C# 如何通过LINQ选择队列中最频繁出现的值?

C# 如何通过LINQ选择队列中最频繁出现的值?,c#,linq,C#,Linq,我在排队。如何选择最频繁出现的值并通过LINQ表达式将其分配给int int number = (from i in queue group // ? select i).First(); Queue Queue=new Queue(); 排队。排队(1); 排队。排队(2); 排队。排队(3); 排队。排队(4); 排队。排队(5); 排队。排队(2); 排队。排队(3); 排队。排队(2); 排队。排队(4); int number=(来

我在排队。如何选择最频繁出现的值并通过LINQ表达式将其分配给int

int number = (from i in queue
             group // ?
             select i).First();
Queue Queue=new Queue();
排队。排队(1);
排队。排队(2);
排队。排队(3);
排队。排队(4);
排队。排队(5);
排队。排队(2);
排队。排队(3);
排队。排队(2);
排队。排队(4);
int number=(来自队列中的c)
c组按c分为g组
orderby g.Count()降序
选择g.Key).FirstOrDefault();
我希望它能帮助你

可能重复的
int number = queue.GroupBy( x => x)
                  .OrderByDescending( g => g.Count())
                  .Select( g => g.Key)
                  .First();
        Queue<int> queue = new Queue<int>();

        queue.Enqueue(1);
        queue.Enqueue(2);
        queue.Enqueue(3);
        queue.Enqueue(4);
        queue.Enqueue(5);
        queue.Enqueue(2);
        queue.Enqueue(3);
        queue.Enqueue(2);
        queue.Enqueue(4);

        int number =(from c in queue
                     group c by c into g
                     orderby g.Count() descending
                     select g.Key).FirstOrDefault();