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

124
Visualizações
Encontrar la cadena más larga de índices y valores de elementos de matriz

No puedo resolver un problema. Tenemos una matriz. Si tomamos un valor, su índice significa ID de puerto, y el valor en sí significa la ID de otro puerto al que está conectado. Necesita encontrar el índice de inicio de la conexión secuencial más larga al elemento cuyo valor es -1.

Hice una explicación gráfica para describir el caso de la matriz [2, 2, 1, 5, 3, -1, 4, 5, 2, 3]. En la imagen, la conexión más larga es violeta (3 segmentos).

descripción gráfica

Necesito hacer una solución mediante una función getResult(connections) con un solo argumento. No sé cómo hacerlo, así que decidí devolver otra función con varios argumentos que me permitan hacer una solución recursiva.

 function getResult(connections) { return f(connections.findIndex(e => e === -1), connections, 0, []); } function f(index, cnx, counter, branches) { counter++; for (let i = 0; i < cnx.length; i++) { if (cnx[i] === index) { branches.push([i, counter]); return f(i, cnx, counter, branches); } } return branches.sort((a, b) => b[1] - a[1])[0][0]; } console.log(getResult([1, 2, -1])); // expected 0 console.log(getResult([1, -1, 1, 2])); // expected 3 console.log(getResult([2, 1, -1])); // expected 0 console.log(getResult([3, 4, 1, -1, 3])); // expected 2 console.log(getResult([1, 0, -1, 2])); // expected 3 console.log(getResult([3, 2, 1, -1])); // expected 0 console.log(getResult([2, 2, 1, 5, 3, -1, 4, 5, 2, 3])); // expected 6

De todos modos, el código no funciona completamente correctamente. ¿Podría explicar mis errores? ¿Es posible resolver el problema mediante una función con solo un argumento original?

over 4 years ago · Santiago Trujillo
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