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

357
Visualizações
¿Cómo ordenar cadenas por número de visitas?

tengo una matriz de cadenas

 const arr = ['ACST', 'CST', 'CCST'];;

Y tengo const word = 'CS'; Cómo ordenar la matriz para que sea

 const newArr = ['CST', 'CCST', 'ACST'];

Intenté algo como esto, pero se ve mal y no funciona correctamente; Salida CCST -> CST ... , debe ser CST -> CCST

 arr.sort((a, b) => { let A = 0; let B = 0; for (let i = 0; i < word.length; i++) { if (a.charAt(i) === word.charAt(i)) { A++; } if (b.charAt(i) === word.charAt(i)) { B++; } } return A + B; });
about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

¡Casi lo tienes! Solo necesita devolver -1 o 1 para decirle al algoritmo de clasificación qué valor elegir.

 const arr = ['ACST', 'CST', 'CCST'];; const newArr = ['CST', 'CCST', 'ACST']; const word = 'CS' arr.sort((a, b) => { let A = 0; let B = 0; for (let i = 0; i < word.length; i++) { if (a.charAt(i) === word.charAt(i)) { ++A; } if (b.charAt(i) === word.charAt(i)) { ++B; } } return A > B ? -1 : 1; }); console.log(arr)

about 4 years ago · Juan Pablo Isaza Relatório

0

Si desea ordenar por el número de caracteres coincidentes en los índices correspondientes, debe restar el recuento de las dos cadenas en la función de comparación (es decir A - B para orden ascendente y B - A para orden descendente).

 const arr = ['ACST', 'CST', 'CCST']; const word = 'CS'; arr.sort((a, b) => { let A = 0; let B = 0; for (let i = 0; i < word.length; i++) { if (a.charAt(i) === word.charAt(i)) A++; if (b.charAt(i) === word.charAt(i)) B++; } return B - A; }); console.log(arr);

about 4 years ago · Juan Pablo Isaza Relatório

0

Si entendí bien el punto:

 const arr = ['CRST','CSX', 'CKST', 'CST', 'CCST']; var lastIndex = 0; console.log( arr.reduce((r, i, index) => { if (i.match(/^CS/) || i.match(/^CS./)) { r.unshift(i); lastIndex = lastIndex+1; } else if (i.match(/CS./)) { r.splice(lastIndex, 0, i); } else r.push(i); return r; }, []) );

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