Boa tarde. Fiz um código idêntico ao mostrado na aula sobre ordenação de algoritmos em JS, mas não está funcionando da maneira de deveria (ordem por preço). Segue abaixo o código. Caso alguém possa me ajudar, agradeço de verdade.
// Insertion Sort - Inserindo os elementos na posição desejada
const livros = [
{
titulo: 'JavaScript',
preço: 25
},
{
titulo: 'PHP',
preço: 15
},
{
titulo: 'Java',
preço: 30
},
{
titulo: 'Elixir',
preço: 50
},
{
titulo: 'Go',
preço: 45
},
{
titulo: 'Python',
preço: 20
}
];
function insertionSort(listaQualquer) {
for(let i = 0; i < listaQualquer.lenght; i++) {
let analise = i;
while(analise > 0 && listaQualquer[analise].preço < listaQualquer[analise - 1].preço) {
let itemAnalise = listaQualquer[analise];
let itemAnterior = listaQualquer[analise - 1];
listaQualquer[analise] = itemAnterior
listaQualquer[analise - 1] = itemAnalise
// Essa parte acima serve para trocar a posição dos itens analisados!
analise-- // Sai do loop while
}
}
console.log(listaQualquer);
}
insertionSort(livros);