Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Relevância do tema

Minha dúvida em si não é sobre o código. No vídeo da aula, a instrutora diz que o merge sort é um algoritmo muito usado e eu acredito. Porém não entendi sua utilização.

No exemplo do vídeo, temos uma lista desordenada de 11 itens e porque o usuário iria querer a ordenação entre os 5 primeiros apenas? Se estamos considerando o preço, ele não iria querer os 5 mais baratos da lista inteira?

Em que caso, no mundo real, ele poderia mesmo ser utilizado?

2 respostas
solução!

Oi Karyna!

Para apresentar o algoritmo no curso usamos alguns exemplos mais sucintos, porém no mundo real algoritmos de ordenação como o merge sort (e outros do tipo divide and conquer ou "dividir para conquistar") estão por trás de várias funcionalidades e ferramentas que usamos no dia-a-dia.

Por exemplo, o Google Chrome e o Node.js utilizam uma variação do Merge Sort na implementação do próprio método de ordenação do JavaScript, o array.sort(). O Merge Sort também é utilizado por trás da implementação de array.sort() no Firefox.

Ou seja, se você utiliza array.sort() em algum projeto que vai ser interpretado por alguns desses navegadores ou pelo Chrome, o interpretador está usando algoritmos de certa forma parecidos (embora implementados para casos mais complexos) com o que vimos no curso. A ideia de praticar com algoritmos "clássicos" como Merge Sort e Quick Sort é justamente apresentar esses conceitos de forma prática para que possam ser aplicados de acordo com o que for necessário no contexto de cada produto/programa.

Espero ter ajudado!

Bons estudos ;)

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

Entendi!! Muito obrigada!!