Existe-t-il un moyen simple de compter le nombre d'occurrences de tous les éléments d'une liste dans cette même liste en C#?Une méthode pour compter les occurrences dans une liste
Quelque chose comme ceci:
using System;
using System.IO;
using System.Text.RegularExpressions;
using System.Collections.Generic;
using System.Linq;
string Occur;
List<string> Words = new List<string>();
List<string> Occurrences = new List<string>();
// ~170 elements added. . .
for (int i = 0;i<Words.Count;i++){
Words = Words.Distinct().ToList();
for (int ii = 0;ii<Words.Count;ii++){Occur = new Regex(Words[ii]).Matches(Words[]).Count;}
Occurrences.Add (Occur);
Console.Write("{0} ({1}), ", Words[i], Occurrences[i]);
}
}
+1. c'est très élégant de compter l'occurrence de chaque élément distinct. –
Qu'en est-il de list.FindAll? – CodeFusionMobile
FindAll renvoie une liste d'éléments de la liste d'origine correspondant à un prédicat. Vous devez donc le faire une fois pour chaque élément unique afin de trouver le nombre d'éléments correspondant à cet élément. –