找到数组中重复最多的数(重复最多的不止一个数)

.Net技术 码拜 8年前 (2017-04-26) 1423次浏览
例如数组内的元素是 1,1,1,2,2,2,3,3,4
重复最多的数是1和2,怎么样找到?
解决方案

20

int[] array=new array[]{1,1,1,2,2,2,3,3,4};
var groups=array.GroupBy(x=>x);
var datacounts=groups.Where(x=>x.Count()==groups.Max(y=>y.Count()));
foreach(var datacount in datacounts)
{
Console.WriteLine(datacount.Key);
}

20

 int[] numbers = new int[] { 1, 1, 1, 2, 2, 2,2, 3, 3, 4 };
            var results = numbers.GroupBy(x => x).Select(y => new
            {
                num = y.Key,
                count = y.Count()
            });
            var max = results.Max(x => x.count);
            results = results.Where(r => r.count == max);

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明找到数组中重复最多的数(重复最多的不止一个数)
喜欢 (0)
[1034331897@qq.com]
分享 (0)