Estoy intentando un proyecto que requiere que registre cada URL única visitada por el usuario, con el objetivo de tener una forma de almacenar cada matriz para mantenerla única.
¿Hay una manera eficiente de hacer esto? Obviamente, esto podría ser teóricamente masivo, posiblemente decenas de miles de entradas si fuera una matriz que no funcionaría. ¿Cómo podría almacenarlas?
(Me doy cuenta de que esto es vago, pero incluso si su respuesta es simplemente no, eso no es probable o inteligente, eso sería útil :))
...posiblemente decenas de miles de entradas si fuera una matriz que no funcionaría...
Las matrices pueden contener decenas de miles o incluso cientos de miles de elementos.
Pero para la singularidad, desea un Set en lugar de una matriz, ya que ofrece un tiempo de búsqueda sublineal en comparación con el tiempo de búsqueda lineal en una matriz y una mejor semántica para conjuntos de valores únicos.
Aquí hay un ejemplo de construcción de un conjunto de un millón de números aleatorios únicos:
const set = new Set(); console.time("Time to build the set"); while (set.size < 1_000_000) { set.add(Math.random()); // Won't add duplicate elements } console.timeEnd("Time to build the set"); console.log(`The set contains ${set.size.toLocaleString()} unique otherwise-random numbers`);Para mí, eso se ejecuta en unos 200 ms. Mientras que me di por vencido con el equivalente usando una matriz después de varios minutos .