一千萬個為什麽

搜索

如何獲得Int數組中最常見的值? (C#)

如何使用C#獲取Int數組中最常見的值

例如:Array具有以下值:1,1,1,2

Ans應為1

最佳答案

var query = (from item in array
        group item by item into g
        orderby g.Count() descending
        select new { Item = g.Key, Count = g.Count() }).First();

對於價值而不是數量,你可以做到

var query = (from item in array
                group item by item into g
                orderby g.Count() descending
                select g.Key).First();

第二個Lambda版本:

var query = array.GroupBy(item => item).OrderByDescending(g => g.Count()).Select(g => g.Key).First();

轉載註明原文: 如何獲得Int數組中最常見的值? (C#)