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

250
Visualizações
¿Cómo obtengo la diferencia entre dos estados de matriz FIFO?

Tengo dos matrices que representan un estado similar a fifo, un estado antiguo y un estado nuevo. Necesito una función que encuentre los elementos recién agregados comparando la nueva matriz con la anterior. A continuación, 3 ejemplos de dos matrices donde 1 tiene elementos agregados al frente en comparación con el otro:

 // Input 1 const arr1 = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']; const arr2 = ['a', 'b', 'a', 'b', 'c', 'd', 'e', 'f', 'g']; // added 'a' and 'b' in front // Input 2 const arr3 = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']; const arr4 = ['q', 'r', 'a', 'b', 'c', 'd', 'e', 'f', 'g']; // added 'q' and 'r' in front // Input 3 const arr5 = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']; const arr6 = ['a', 'b', 'q', 'a', 'b', 'c', 'd', 'e', 'f']; // added 'a' 'b' and 'q' in front // New Input 4 const arr7 = ['a', 'b', 'a', 'b', 'c', 'd', 'e', 'f', 'g']; const arr8 = ['a', 'b', 'a', 'b', 'a', 'b', 'c', 'd', 'e']; // added 'a' and 'b' in front

Tenga en cuenta que la cantidad de elementos recién agregados se elimina de la parte posterior de la matriz. Aquí la funcionalidad deseada getItemsAdded(arr1, arr2) función:

 // Desired output for 'getItemsAdded()' function console.log(getItemsAdded(arr1, arr2)); // [ 'a', 'b' ] console.log(getItemsAdded(arr3, arr4)); // [ 'q', 'r' ] console.log(getItemsAdded(arr5, arr6)); // [ 'a', 'b', 'q' ] // New console.log(getItemsAdded(arr7, arr8)); // [ 'a', 'b' ]

Se siente como un problema tan simple, pero no puedo entenderlo... No pude resolverlo con las soluciones provistas aquí ¿Cómo obtener la diferencia entre dos matrices en JavaScript? , ya que es un problema diferente.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

El código puede decir más palabras, entonces mi explicación tonta...

 // Input 1 const arr1 = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']; const arr2 = ['a', 'b', 'a', 'b', 'c', 'd', 'e', 'f', 'g']; // added 'a' and 'b' in front // Input 2 const arr3 = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']; const arr4 = ['q', 'r', 'a', 'b', 'c', 'd', 'e', 'f', 'g']; // added 'q' and 'r' in front // Input 3 const arr5 = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']; const arr6 = ['a', 'b', 'q', 'a', 'b', 'c', 'd', 'e', 'f']; // added 'a' 'b' and 'q' in front const arr7 = ['a', 'b', 'a', 'b', 'c', 'd', 'e', 'f', 'g']; const arr8 = ['a', 'b', 'a', 'b', 'a', 'b', 'c', 'd', 'e']; // added 'a' and 'b' in front // Desired output for 'diff()' function console.log([...getItemsAdded(arr1, arr2)]); // [ 'a', 'b' ] console.log([...getItemsAdded(arr3, arr4)]); // [ 'q', 'r' ] console.log([...getItemsAdded(arr5, arr6)]); // [ 'a', 'b', 'q' ] console.log([...getItemsAdded(arr7, arr8)]); // [ 'a', 'b' ] function startsWith(arr1, arr2) { for (let i = 0; i < arr1.length; i++) if (arr1[i] != arr2[i]) return false return true } function* getItemsAdded(arr1, arr2) { while (!startsWith(arr2, arr1)) yield arr2.shift() }

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