typestar

DistinctBy en C#

Deduplicar por una clave conservando los elementos completos.

var visits = new[]
{
    (User: "ada", Page: "/home"), (User: "alan", Page: "/docs"),
    (User: "ada", Page: "/docs"), (User: "kurt", Page: "/home"),
};

// DistinctBy conserva el primer elemento visto de cada clave
var firstPerUser = visits.DistinctBy(v => v.User);
foreach (var (user, page) in firstPerUser)
{
    Console.WriteLine($"{user} landed on {page}");
}
Console.WriteLine(visits.DistinctBy(v => v.Page).Count());

Cómo funciona

  1. DistinctBy(v => v.User) conserva la primera visita por usuario.
  2. Los elementos sobreviven intactos — solo la clave dirige la comparación.
  3. Contar por Page muestra la misma herramienta sobre otra clave.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
13
Caracteres a escribir
412
Tokens
104
Ritmo de tres estrellas
85 tpm

Al ritmo de tres estrellas de 85 tokens por minuto, este intento toma unos 73 segundos.

Escribe este fragmento

Paso 3 de 3 en Cortes; paso 6 de 17 en LINQ a fondo.

← Anterior Siguiente →