Segundo Wirth (1989), o Shellsort é o mais eficiente, dentre os algoritmos classificados como de complexidade quadrática. Você, enquanto programador(a), deve ter ciência das opções de algoritmos quatrátidos que existem e, com isso, optar pela utilização de uma, ou outra técnica, dependendo das necessidades que sua aplicação exige.
Adaptado de: WIRTH, K. Algoritmos e Estruturas de Dados. Rio de Janeiro: Prentice-Hall do Brasil, 1989.
Tomando por base seus conhecimentos a respeito do algoritmo Shellsort, leia atentamente as alternativas e marque a resposta correta.
Alternativa 1:
O Shellsort é uma otimização do algoritmo Bubblesort.
Alternativa 2:
O algoritmo Shellsort necessita de vetores auxiliares para realizar ordenação.
Alternativa 3:
O nome do algoritmo Shellsort se deve ao fato de ele implementar o conceito de "concha" de dados.
Alternativa 4:
O conceito de GAP, utilizado no Shellsort, é uma maneira de aproximar elementos que estão muito distantes dentro de um mesmo vetor.
Alternativa 5:
Devido a sua similaridade com a busca binária, de maneira geral, o Shellsort utiliza uma estrutura em árvore para realizar sua busca.
Soluções para a tarefa
O conceito de GAP, utilizado no Shellsort, é uma maneira de aproximar elementos que estão muito distante dentro de um mesmo vetor, alternativa IV)
Dentre os algoritmos que fazem parte da complexidade quadrática, o Shell Sorte é o mais eficiente. Ele traz em sua composição uma espécie de refinamento do método de inserção direta.
O algoritmo difere-se do método de inserção direta simplesmente pelo fato de no lugar de considerar o array a ser ordenado como algum tipo de segmento, ele considera os mais variados segmentos que podem ser aplicados ao método de inserção direta em cada um dos tipos.
Bons estudos!
Resposta:
Alternativa 4: O conceito de GAP, utilizado no Shellsort, é uma maneira de aproximar elementos que estão muito distantes dentro de um mesmo vetor.
Explicação: A Explicação se encontra na página 81 do material didático, no tópico Ordenação por Shellsort.