Alternativa B - Bubble Sort
O algoritmo identificado no trecho de código é o Bubble Sort (também conhecido como Ordenação por Bolha ou Ordenação por Troca).
Análise do Código
Para identificar o algoritmo, precisamos observar a lógica principal executada dentro dos loops:
- Loops Aninhados: O código possui dois laços
for um dentro do outro. Isso é característico de algoritmos de ordenação por troca com complexidade O(n^2), como o Bubble Sort. - Comparação de Vizinhos: A linha
if(vet[i] > vet[i+1]) compara o elemento atual com o elemento imediatamente seguinte (vizinho). - Troca (Swap): Se o elemento atual for maior que o próximo, eles são trocados usando uma variável auxiliar (
aux).
A lógica geral é: "Se eu estiver maior que meu vizinho da direita, vamos trocar de lugar". Com as repetições, os elementos maiores "sobem" ou "flutuam" para o final do vetor, como bolhas subindo na água.
Comparação com outras opções
| Algoritmo | Característica Principal |
|---|
| Bubble Sort | Compara elementos adjacentes e troca-os se estiverem fora de ordem. |
| Heap Sort | Utiliza uma estrutura de dados chamada Heap (Árvore Binária Completa). |
| Quick Sort | Divide o problema recursivamente escolhendo um "pivô". |
| Merge Sort | Divide o array em metades menores até ter elementos unitários e depois mescla. |
A estrutura apresentada não envolve divisão recursiva (como Quick/Merge) nem estruturas de árvore (Heap), sendo puramente baseada na troca sequencial de pares adjacentes.
Portanto, a implementação corresponde ao Bubble Sort.