Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Modo alternativo de solução do algoritimo.

const {edGalho, edFolha} = require('./array');

function juntandoLista(arr1,arr2){
    let listaFinal = [];
    let atualL1 = 0;
    let atualL2 = 0;

    while(atualL1<arr1.length && atualL2<arr2.length){

        if(arr1[atualL1].preco > arr2[atualL2].preco){
            listaFinal.push(arr2[atualL2]);
            atualL2++;
        } else if(arr2[atualL2].preco > arr1[atualL1].preco){
            listaFinal.push(arr1[atualL1]);
            atualL1++
        } else{
            listaFinal.push(arr1[atualL1]);
            listaFinal.push(arr2[atualL2]);
            atualL1++;
            atualL2++;
        };

    };

    while(arr1[atualL1] || arr2[atualL2]){

        if(arr1[atualL1]){
            listaFinal.push(arr1[atualL1]);
            atualL1++;
        } else{
            listaFinal.push(arr2[atualL2]);
            atualL2++;
        };
    };

    return listaFinal;
};

console.log(juntandoLista(edFolha,edGalho));

Eu fiz o algoritimo de uma maneira alternativa da professora, o que acham? Isso fere alguma boa prática do JS?

1 resposta
solução!

Olá, Otávio!

Achei interessante a sua abordagem alternativa para o algoritmo de junção de listas. Não vejo nenhum problema em relação a boas práticas do JavaScript no seu código. Você conseguiu implementar a lógica corretamente.

Continue a explorar e se desafiar, essa forma de aprendizado também é a minha rs. Acredito que dessa maneira podemos comparar os pontos em comum e as diferenças entre outros desenvolvedores, o que nos permite avaliar as vantagens e desvantagens do nosso código.

Reforço que em casos de dúvidas, conte sempre com o fórum da comunidade Alura! Bons estudos!

Sucesso

Um grande abraço e até mais!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software