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

194
Vistas
Iterar a través de una matriz n número de veces rotando elementos

Tengo una matriz como [1,2,3,4,5] y tengo el número total para rotar la matriz como 3 . Entonces, después de la primera rotación, la matriz debería ser [2,3,4,5,1] . De esta manera, la matriz debe seguir girando n número de veces que se da. Tengo una solución para rotar la matriz que se muestra a continuación, pero no puedo hacer esto n veces. Esto es lo que he hecho:

 function rotateLeft(arr, n) { var newArr = []; for( let i=1; i< arr.length; i++){ newArr.push(arr[i]); } newArr.push(arr[0]); console.log(newArr); } rotateLeft([1,2,3,4,5], 3);

about 4 years ago · Santiago Gelvez
2 Respuestas
Responde la pregunta

0

Empuje el primer elemento de una matriz hasta el final dentro de un bucle while

 const original = [1,2,3,4,5]; console.log(`original: [${ original}], rotated: [${ rotateLeft(original, 3)}]`); function rotateLeft(arr, n) { // if you want to mutate the original arr // omit cloning const clone = [...arr]; while (n--) { clone.push(clone.shift()); }; return clone; }

about 4 years ago · Santiago Gelvez Denunciar

0

Dado que no gira la matriz en su lugar, sino que crea una nueva matriz, puede hacerlo de manera más simple:

 function rotateLeft(arr, n) { n %= arr.length; return [...arr.slice(n), ...arr.slice(0, n)]; } // generate an array with numbers const arr = [...Array(20).keys()]; console.log(...arr); // rotateLeft by 8 console.log(...rotateLeft(arr, 8)); // rotateLeft by -22 (rotateRight by 22) // since arr.length === 20 // same as rotateLeft by -2 // same as rotateLeft by 18 console.log(...rotateLeft(arr, -22));

about 4 years ago · Santiago Gelvez 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