Hey devs, este algoritmo es un clásico, así que vamos a resolverlo al toque 🥳.
Enunciado
Dado un texto, hallar la palabra que más se repite.
Solución en C#
Hay varias formas de resolver este algoritmo, emplearé la forma más eficiente usando un diccionario.
public static void TheMostRepeatedWord(string text)
{
var dictionary = new Dictionary<string, int>();
//dividimos el texto en palabras y lo almacenamos en un arreglo
var words = text.Split(new char[] { ',', ' ', '.' },
StringSplitOptions.RemoveEmptyEntries)
.Select(w => w.ToLower());
foreach (var word in words)
{
if (!dictionary.ContainsKey(word))
dictionary[word] = 1;
else
dictionary[word]++;
}
var mostRepeatedWord = dictionary
.OrderByDescending(x => x.Value)
.FirstOrDefault().Key;
Console.WriteLine(mostRepeatedWord);
}
Todos los algoritmos conocidos, a los que llamo Algoritmos notables se encuentran agrupados en esta categoría, y el código en este repo 🙌
Si esta entrada te ha gustado dev, compártela! ✌🏼🐿️
Créditos de imagen de portada: Foto de Martin Hexeberg en Unsplash
Un comentario en «Algoritmos notables: Hallar la palabra más repetida»