Home >Backend Development >C++ >How Can I Efficiently Count Element Occurrences in a C# List?
Counting Occurrences in a List using C#
In C#, there are various methods available to count the occurrences of each element in a list effectively. One approach involves utilizing the GroupBy extension method:
using System; using System.Collections.Generic; using System.Linq; List<int> list = new List<int>() { 1, 2, 3, 4, 5, 2, 2, 2, 4, 4, 4, 1 }; // Group the list elements based on their values var groupedList = list.GroupBy(i => i); // Iterate over each group and count the occurrences foreach (var group in groupedList) { Console.WriteLine($"{group.Key}: {group.Count()}"); }
In this example, the GroupBy method takes a Func
Alternatively, you could use a Dictionary
using System; using System.Collections.Generic; List<int> list = new List<int>() { 1, 2, 3, 4, 5, 2, 2, 2, 4, 4, 4, 1 }; // Create a dictionary to store element counts Dictionary<int, int> counts = new Dictionary<int, int>(); // Populate the dictionary with counts foreach (var item in list) { if (counts.ContainsKey(item)) { counts[item]++; } else { counts[item] = 1; } } // Iterate over the dictionary to print element counts foreach (var kvp in counts) { Console.WriteLine($"{kvp.Key}: {kvp.Value}"); }
The above is the detailed content of How Can I Efficiently Count Element Occurrences in a C# List?. For more information, please follow other related articles on the PHP Chinese website!