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

94
Vistas
Intercambie aleatoriamente 2 elementos de la matriz con otros 2 elementos

Tengo una lista de miembros del equipo y una lista de 2 sustitutos: team = Samson, Max, Rowan, Flynn, Jack subs = Struan, Harry

Necesito intercambiar aleatoriamente los 2 subs en el equipo. Me estoy atascando porque necesito asegurarme de que solo estos 2 elementos se intercambien y que ambos se intercambien. Intenté simplemente recorrer la matriz de subs e intercambiar aleatoriamente cada elemento con un elemento de la matriz del team , pero con demasiada frecuencia se intercambió Struan con Max y luego Harry con Struan, de modo que al final Struan todavía estaba en la matriz de subs y no en el team .

Entonces: necesito intercambiar exclusivamente los 2 elementos en la matriz sub con elementos aleatorios de la matriz del team . ¿Cómo puedo hacer eso?

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

0

Puedes hacerlo con esta función. Proporcione la función equipo actual y sustituciones y obtenga un nuevo equipo con sustitución aleatoria.

 const team = ['Samson', 'Max', 'Rowan', 'Flynn', 'Jack'] const subs = ['Struan', 'Harry'] const substitudePlayers = (team, subs) => { const newTeam = [...team] // get 2 random numbers which are less than team members count function getRandomInt(min, max) { min = Math.ceil(min); max = Math.floor(max-1); return Math.floor(Math.random() * (max - min + 1)) + min; } // 2 random numbers let num1 = getRandomInt(0, team.length) let num2 = getRandomInt(0, team.length) // make sure that numbers are different while(num2 === num1) num2++ // substitude newTeam[num1]=subs[0] newTeam[num2]=subs[1] return newTeam } const substitudedTeam = substitudePlayers(team, subs); console.log(substitudedTeam)

about 4 years ago · Juan Pablo Isaza Denunciar

0

Esto debería funcionar:

 function getRandomItem () { let randomItem = team[Math.floor(Math.random()*team.length)]; if(subs.indexOf(randomItem)<0){ return randomItem; } else { return getRandomItem(); } } subs.forEach((item,i)=>{ subs.splice(i,1,getRandomItem()); }
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