Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

108
Vistas
¿indexOf () en JS busca todos los elementos de una matriz para ejecutar?
const arr = ['a','b','c']; for (let char of arr) { console.log(char); }

Creo que la complejidad temporal del código anterior es O (n).

 const arr = ['a','b','c']; for (let char of arr) { console.log(arr.indexOf(char); }

Sin embargo, ¿indexOf() busca todos los elementos? Si lo hace, creo que la complejidad del tiempo del código anterior puede ser O (n ^ 2)

Quiero saber si indexOf() busca todos los componentes en cuanto a bucle o no.

about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Para la complejidad del tiempo, siempre considera el peor de los casos (para las circunstancias del OP, cada carácter está en la lista en una posición no designada específicamente). Para tomar una matriz de ejemplo OP, hacer arr.indexOf('c') implicaría mirar cada posición hasta que se encuentre el carácter c (que es la última posición). Por lo tanto, suponiendo el peor de los casos, la ejecución tardaría O(n) tiempo para .indexOf() . Según el comentario de @Nick Parsons, hay formas de mejorar el tiempo del algoritmo de búsqueda subyacente utilizando estrategias como una búsqueda binaria (que es una complejidad de tiempo O(log n) , pero eso implica que los datos están en algún formato semiestructurado para cualquier concepto como búsqueda binaria para mejorar la complejidad del tiempo.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Si los proveedores de navegadores siguen la especificación del idioma, entonces la respuesta es NO. Debería volver una vez que se encuentre una coincidencia. En determinadas circunstancias, volverá incluso sin comprobar ningún elemento. Consulte ECMA262 .

Sin embargo, la complejidad sería la misma, O(n^2).

about 4 years ago · Juan Pablo Isaza Denunciar

0

Sí, la función indexOf() tiene una complejidad de O(n). Si el índice proporcionado es negativo, la matriz aún se busca de adelante hacia atrás. Si el índice calculado es menor que 0, se buscará en toda la matriz.

Entonces su programa tendrá una notación grande de O (n ^ 2)

Puedes encontrar más sobre esto aquí en MDN

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda