O algoritmo de ordenação de pior complexidade temporal no ca...

Próximas questões
Com base no mesmo assunto
Q491591 Algoritmos e Estrutura de Dados
O algoritmo de ordenação de pior complexidade temporal no caso médio, dentre os que se seguem, é
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta é a alternativa B - Bubble sort.

Vamos entender a questão e o porquê dessa resposta.

Essa questão aborda um tema fundamental em Algoritmos e Estrutura de Dados, especificamente focando em algoritmos de ordenação. Para resolvê-la, é necessário conhecimento sobre a complexidade temporal dos algoritmos, tanto no melhor, quanto no pior, e no caso médio.

Agora, vamos analisar cada uma das alternativas:

A - Merge sort: O Merge sort tem uma complexidade média de O(n log n). Isso ocorre porque o algoritmo divide a lista ao meio repetidamente e depois reconstrói a lista ordenada. Portanto, ele tem uma complexidade eficiente em termos de tempo.

B - Bubble sort: O Bubble sort tem uma complexidade média de O(n²). Esse algoritmo compara pares de elementos adjacentes e os troca se estiverem na ordem errada. No caso médio, ele precisa de várias iterações sobre a lista, tornando-se ineficiente para listas maiores.

C - Heapsort: O Heapsort tem uma complexidade média de O(n log n). Ele constrói um heap a partir dos dados e então ordena os dados extraindo o maior valor repetidamente. Isso também o torna eficiente em termos de tempo.

D - Quicksort: O Quicksort tem uma complexidade média de O(n log n) na maioria dos casos, embora no pior caso possa ser O(n²). Quicksort funciona particionando a lista ao redor de um pivô. Sua eficiência média é muito boa, mas depende da escolha de um bom pivô.

E - Binary tree sort: O Binary tree sort também tem uma complexidade média de O(n log n) na maioria dos casos. Ele insere os elementos em uma árvore binária de busca e então realiza uma travessia em ordem para obter a lista ordenada.

Portanto, Bubble sort é o algoritmo de ordenação que possui a pior complexidade temporal no caso médio entre os listados. Sua complexidade O(n²) o torna muito menos eficiente para grandes conjuntos de dados, comparado aos outros algoritmos mencionados.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Gabarito B

BubbleSort - pouco eficiente para ordenar grandes quantidades de informações. Compara posições adjacentes e vai ordenando o vetor. Elemento da posição i é comparado com o elemento da posição i + 1. 
 

 

 

 

"Retroceder Nunca Render-se Jamais !"
Força e Fé !
Fortuna Audaces Sequitur !

algo____________best___________average___________worst

Quicksort  Ω(n log(n))___________  Θ(n log(n))___________  O(n^2)  

Mergesort  Ω(n log(n)) ___________ Θ(n log(n)) ___________ O(n log(n))  

Timsort  Ω(n) ___________ Θ(n log(n)) ___________ O(n log(n))  

Heapsort  Ω(n log(n))___________  Θ(n log(n)) ___________ O(n log(n))

Bubble Sort  Ω(n) ___________ Θ(n^2) ___________ O(n^2)

Insertion Sort  Ω(n) ___________ Θ(n^2) ___________ O(n^2)

Selection Sort  Ω(n^2) ___________ Θ(n^2) ___________ O(n^2)

Tree Sort  Ω(n log(n)) ___________ Θ(n log(n)) ___________ O(n^2)

Shell Sort  Ω(n log(n)) ___________ Θ(n(log(n))^2) ___________ O(n(log(n))^2)

Bucket Sort  Ω(n+k) ___________ Θ(n+k) ___________ O(n^2)

Radix Sort  Ω(nk) ___________ Θ(nk) ___________ O(nk)

Counting Sort  Ω(n+k) ___________ Θ(n+k) ___________ O(n+k)

Cubesort  Ω(n)  ___________Θ(n log(n)) ___________ O(n log(n))  

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo