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

[Projeto] Algoritmo de Bubble Sort

Bom dia pessoal, conforme a sugestão da professora, implementei outro algoritmo de ordenação como exercício: o Bubble Sort.

const precosLivros = [
  {
    titulo: "JavaScript",
    preco: 25,
  },
  {
    titulo: "PHP",
    preco: 15,
  },
  {
    titulo: "Java",
    preco: 30,
  },
  {
    titulo: "Elixir",
    preco: 50,
  },
  {
    titulo: "Go",
    preco: 45,
  },
  {
    titulo: "Python",
    preco: 20,
  },
];

module.exports = precosLivros;
function troca(valor1, valor2, objetos) {
  let trocaValor1 = objetos[valor1];
  let trocaValor2 = objetos[valor2];

  objetos[valor1] = trocaValor2;
  objetos[valor2] = trocaValor1;
}

module.exports = troca;
const objetos = require("./lista");
const troca = require("./troca");

for (ciclo = 0; ciclo < objetos.length; ciclo++) {
  for (atual = 0; atual < objetos.length - 1 - ciclo; atual++) {
    if (objetos[atual].preco > objetos[atual + 1].preco) {
      troca(atual, atual + 1, objetos);
    }
  }
}
console.log(objetos);
1 resposta
solução!

Bom dia, Diego, espero que esteja bem!

Sua implementação de Bubble Sort é correta e atenderá às necessidades.

Vale ressaltar que o Bubble Sort é um método de ordenação bastante simples de complexidade O(n²), o que o torna muito lento quando há vários elementos a serem ordenados. Recomendo que para seus estudos futuros e, principalmente, a fins de aplicação em empresas, pesquise sobre Merge Sort e Quick Sort (padrão a ser utilizado), estes algoritmos são de complexidade O(n log n), trabalhando com recursividade (outro assunto importante de se aprender sobre).

Boa sorte em seus estudos!

  • "O desafio de uma missão é o que a torna emocionante." - Capitão Jean-Luc Picard