Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

99
Visualizações
Big O para un bucle frente a un método javasccript que resuelve un problema

Encuentra si las dos matrices contienen una propiedad o valor similar.

 const one =[1,2,3,4,5] const two = [5,6,7,8]
 // a double loop that solves this problem O(n^2)

contra

 two.some(item => one.includes(item)) // this is more efficient than the double loop method // but behind the scenes isnt javascript just looping ? // why is this more performant ? // and is the big O of this O(n)?
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Si tu

un doble bucle que resuelve este problema

sale de los bucles tan pronto como se encuentra una coincidencia, entonces ambos métodos son igualmente ineficientes: ambos requieren iterar sobre todos los N elementos M veces, en el peor de los casos, donde N es la longitud de una matriz y M es la longitud de el otro. (Entonces, O(n * m) u O(n^2) , dependiendo de cómo desee especificar las longitudes de las entradas).

La ventaja del segundo método.

 two.some(item => one.includes(item))

es que es mucho más legible que usar bucles for . No tiene más rendimiento: lo contrario es cierto, los bucles for son generalmente más rápidos que los métodos de matriz.

Si desea reducir la complejidad a O(n) , en lugar de iterar sobre la segunda matriz dentro de un ciclo, use una búsqueda de conjunto dentro del ciclo, que es mucho más rápida:

 const oneSet = new Set(one); return two.some(item => oneSet.has(item));

porque la búsqueda de conjuntos es sublineal y, en general, O(1) , lo que da como resultado una complejidad general de O(n) .

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda