Oi, pessoal! Vi aqui no fórum que algumas pessoas tiveram problemas com o exercício proposto. Minha solução foi a seguinte:
- No arquivo troca.js, coloquei a função troca() com 3 parâmetros: lista, analise e menor.
function troca(lista, analise, menor) {
let itemAnalise = lista[analise];
let itemAnterior = lista[menor];
lista[analise] = itemAnterior;
lista[menor] = itemAnalise;
}
module.exports = troca;
- No insertionSort.js, chamei a função troca() (dentro do while) com os seguintes parâmetros: (livros, analise, analise-1).
const livros = require('./listaLivros');
const troca = require('./troca');
function insertionSort(lista) {
for (let atual = 0; atual < lista.length; atual++) {
let analise = atual;
while (analise > 0 && lista[analise].preco < lista[analise - 1].preco) {
troca(livros, analise, analise-1);
analise--
}
}
console.log(lista);
}
insertionSort(livros);
- E no arquivo selectionSort.js, chamei a função troca() (dentro do for) com os seguintes parâmetros: (livros, atual, menor).
const livros = require('./listaLivros');
const menorValor = require('./menorValor');
const troca = require('./troca');
for (let atual = 0; atual < livros.length; atual++) {
let menor = menorValor(livros, atual);
troca(livros, atual, menor);
}
console.log(livros);
Prontinho! Assim rodou tudo certo. Espero ter ajudado!