string[] words = System.IO.File.ReadAllLines("word.txt");
var query = from word in words
where word.Length > "abe".Length && word.StartsWith("abe")
select word;
foreach (var w in query.AsParallel())
{
Console.WriteLine(w);
}
Básicamente, la palabra.txt contiene 170000 palabras en inglés. ¿Hay una clase de colección en C# que sea más rápida que una matriz de cadena para la consulta anterior? No habrá inserción o eliminación, solo busque si una cadena comienza con "abe" o "abdi".¿Cuál es la clase de recopilación más eficiente en C# para la búsqueda de cadenas
Cada palabra en el archivo es única.
EDIT 1
Esta búsqueda se realizará potencialmente millones de veces en mi aplicación. También quiero seguir con LINQ para la consulta de recopilación porque podría necesitar usar la función de agregado.
EDIT 2
Las palabras del archivo ya están ordenados, el archivo no cambiará
¿Cuál es el caso de uso? Alexai saca un buen punto, si se trata de una búsqueda única, entonces una matriz está bien. Si esto va a ser un escenario donde repites la búsqueda varias veces, entonces la respuesta es diferente. –