O método de ordenação Bubble Sort percorre o vetor da esquerda para a direita, sempre comparando dois valores de posições adjacentes e trocando-os entre si quando a ordenação entre eles está incorreta, enquanto o método de ordenação Selection Sort percorre todo o vetor, sem confirmar se já haviam valores posicionados corretamente, sempre selecionando os menores valores encontrados e enviando-os no vetor, da esquerda para a direita, fazendo com que o menor valor esteja posicionado na primeira posição, o segundo menor na segunda posição e assim sucessivamente.
Considerando a afirmativa anterior, as tabelas abaixo e fato de que os algoritmos foram executados no mesmo sistema, escolha a alternativa correta:
Usando um vetor de 50 posições:
Método | Tempo de Execução |
Bubble Sort | 0.000067 |
Selection Sort | 0.000066 |
Usando um vetor de 5000 posições:
Método | Tempo de Execução |
Bubble Sort | 0.000100 |
Selection Sort | 0.087180 |
a) Embora a utilização dos métodos de ordenação possa tornar um algoritmo mais complexo, este sempre será executado com melhor desempenho.
b) Os valores do vetor de 5000 posições já estavam bem ordenados antes da execução dos algoritmos.
c) A alternativa anterior estaria correta se estivesse falando dos valores do vetor de 50 posições.
d) Ambos os métodos de ordenação seriam semelhantemente eficientes em cada um dos vetores se os valores de ambos os vetores estivessem completamente desordenados.
e) NDA.
Um comentário:
Resposta correta: B)
Como citado no texto, o método Bubble Sort verifica a ordenação entre dois membros adjacentes, logo, se estes membros estiverem ordenados o algoritmo nao os trocara de lugar, diferente do selection sort, que ordena nao importando a ordem.
Vimos que em um vetor de 5000 posições, o Bubble Sort executa o algoritmo centenas de vezes mais rápido nos levando ao seguinte raciocício:
Se o Bubble Sort verifica os elementos antes de reordena-los, siginifica q nao teve que realizar nenhuma ou quase nenhuma troca de elementos, fazendo com que o algoritmo fosse executado bem rapidamente.
Por outro lado, o Selection Sort mostrou-se mais lento, tendo em vista o fato de que este método SEMPRE TROCA os elementos de posição, mesmo que estejam ordenados.
A alternativa C) nao pode ser pois não e possivel afirmar a ordenação, já que haviam apenas 50 elementos, tornando as execuções com tempos semelhantes.
A alternativa D) não pode ser pois o Bubble Sort, quando identifica elementos desordenados, acaba-os trocando podendo interferir na ordenação de outros elementos a frente, fazendo com que sejam necessários diversos Loops até ordenar todos os valores. Já o Selection Sort, não existe condição, ele varrerá o Vetor e os colocarão em ordem crescente.
Postar um comentário