Тёмный

Algoritmo de Ordenação MERGESORT - EDA2 - a08 

Prof. Bruno Ribas
Подписаться 1,9 тыс.
Просмотров 1,7 тыс.
50% 1

Salve Salve Pessoal,
Esta é a aula em que o Algoritmo MERGESORT é discutido e implementado.
Não deixe de acompanhar o "benchmark" dos algoritmos de ordenação que está cada vez mais com mais métodos implementados:
github.com/bcr...
Para assistir este vídeo é considerado que o aluno já assistiu o vídeo anterior, Aula 1 Introdução ao Estudo de Algoritmos de Ordenação, para que seja entendido todas as macros utilizadas.
Depois de assistir ao vídeo é recomendado que o aluno implemente o algoritmo discutido e ainda faça o teste proposto no fim da aula.
E por fim a pergunta: Este algoritmo de ordenação é estável?
Acompanhe a playlist da disciplina e também o material consolidado em: www.brunoribas....

Опубликовано:

 

5 окт 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 6   
@adripb1
@adripb1 3 года назад
Olá, professor! Gostei muito do seu vídeo, foi bem didático. Porém, eu estou tendo dificuldades em implementar o algoritmo do merge sort. Eu fiz todo o codigo em C para o mergesort e o merge. Eu fico muito confuso se eu devo incrementar ou decrementar certas variáveis, e nas comparações de 'menor que' ou 'menor ou igual'. Você pode me ajudar?
@ProfBrunoRibas
@ProfBrunoRibas 3 года назад
Oi Adriano, o segredo do mergesort acontece, de fato, na função intercala (merge). E lá que você deve se fazer as perguntas sobre o que acontece em cada parte. Quanto ao "menor que" e "menor ou igual" o efeito é apenas sobre a precedência, ou seja, quando os elementos são iguais, entra no vetor consolidado o que estava na primeira ou na segunda metade? E qual o efeito em cada uma das ideias? Qual é o adequado para deixar o mergesort estável? Quanto à parte de incrementar as variáveis, você consegue entender se desenhar os vetores, em um papel mesmo, e executar as instruções passo a passo. Para este caso a minha sugestão é que você implemente uma função que receba dois vetores ordenados e os transforme em um único vetor ordenado. Veja o vídeo que fiz em live este sementre [ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-aHQ4ywYH5gs.html] eu implementei um pouco diferente a intercala, talvez facilite o entendimento. []s
@adripb1
@adripb1 3 года назад
@@ProfBrunoRibas Muito obrigado, professor! Estou progredindo no entendimento. Sucesso ao seu canal :)
@guilherme8104
@guilherme8104 3 года назад
@@adripb1 mano, tive muito problema com esse algorítimo tbm, só ele deve ter me custado umas 8 -> 9h de implementação e justamente por conta da incrementação das variáveis, mas o engraçado que ele tava me dando essa dor de cabeça devido um entendimento errado do conceito básico do merge .
@nathanserra6877
@nathanserra6877 4 года назад
Professor, esse algoritmo não fica problemático, em questão de memória ocupada, quando temos muitos elementos?
@ProfBrunoRibas
@ProfBrunoRibas 4 года назад
Sim. Ele vai precisar de 2*N de memória, para armazenar duas vezes os elementos. E essa é uma desvantagem enorme, especialmente quando estamos falando em sistemas embarcados.
Далее
O que é e COMO FUNCIONA o QuickSort (passo-a-passo)
21:54
ВЫЖИЛ В ДРЕВНЕМ ЕГИПТЕ!
13:09
Просмотров 191 тыс.
Песня РАСПУТИН на русском!🔥
00:56
MERGE SORT |  Algoritmos #7
23:34
Просмотров 44 тыс.
Como Aprender Qualquer Coisa RÁPIDO
7:47
Просмотров 2,1 млн
Visualizing 4D Pt.1
22:56
Просмотров 752 тыс.
Dijkstra's Algorithm - Computerphile
10:43
Просмотров 1,3 млн
Radix Sort - Ordenação por Dígitos
44:23
Просмотров 3,1 тыс.
10 Sorting Algorithms Easily Explained
10:48
Просмотров 64 тыс.
3 Types of Algorithms Every Programmer Needs to Know
13:12