Как подсчитать элементы массива с одинаковыми значениями? - C#

Узнай цену своей работы

Формулировка задачи:

Есть массив из 10 элементов. 3 и 7 элементы имеют одинаковое значение. Нужно, найти в массиве элементы с одинаковыми значениями и подсчитать их.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace TestArray
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] array = new string[]
                {"abc","def","ghi","jkl","mno","pqr","ghi","stu","vwx","yz11"};   
 
            for(int i = 0; i < array.Length; i++)
            {
                Console.WriteLine("{0}\t", array[i]);
            }

            Console.ReadLine();
        }
    }
}

Решение задачи: «Как подсчитать элементы массива с одинаковыми значениями?»

textual
Листинг программы
using System;
using System.Linq;
using System.Collections.Generic;
 
class Program
{
    public static void Main()
    {
        List<int> lst = Enumerable.Repeat(new Random(), 20).Select(r => r.Next(10)).ToList();
        Console.WriteLine(String.Join(", ", lst));
        Console.WriteLine(String.Join(", ", lst.GroupBy(x => x).Where(g => g.Skip(1).Any()).Select(g => Tuple.Create(g.Key, g.Count()))));
        // Или так
        Console.WriteLine(String.Join(", ", lst.Aggregate(new Dictionary<int, int>(), (d, x) => { int n; if (!d.TryGetValue(x, out n)) n = 0; d[x] = ++n; return d; }).Where(kv => kv.Value != 1).Select(kv => Tuple.Create(kv.Key, kv.Value))));
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.923 из 5
Похожие ответы