Questões de Algoritmos de Ordenação (Algoritmos e Estrutura de Dados)

Limpar Busca

Um determinado programador é responsável por tarefas de ordenação e, ao estudar determinados produtos, resolveu ordenar, de maneira crescente, a sequência [64, 34, 25, 12, 90, 11, 22] utilizando dois algoritmos, o Bubble Sort e o Select Sort, nessa ordem. Ele iniciou o teste com o Bubble Sort, mas, na iteração em que a chave 64 atingiu a sua posição correta pela primeira vez, copiou a sequência alcançada nesse estágio e utilizou-a para continuar o trabalho com o algoritmo Select Sort. A partir do momento em que o programador começa a utilizar o segundo algoritmo, quantas trocas de posições de chaves serão realizadas para atingir, pela primeira vez, a situação em que a sequência está ordenada?

  • A 1
  • B 2
  • C 3
  • D 4
  • E 5

Assinale a opção que apresenta a técnica que tem a maior complexidade de tempo de execução.

  • A Quick Sort
  • B Insertion Sort
  • C Bubble Sort
  • D Selection Sort
  • E Heap Sort

Considere a estratégia de ordenação apresentada em linguagem Java:
private static void Ordenacao(int[] V, int ini, int fim) { int i = ini, j = fim, aux; int pivo = ini; if(i >= j) return; while (i < j) { while (V[i] < V[pivo]) { i++; } while (V[j] > V[pivo]) { j--; } if (i < j) { aux = V[i]; V[i] = V[j]; V[j] = aux; if (i == pivo) { pivo = j; } else if (j == pivo) { pivo = i; } } } Ordenacao(V, ini, pivo - 1); Ordenacao(V, pivo + 1, fim); } }
Analise as seguintes afirmações:
I - A estratégia apresentada em Java é o método de ordenação Bubblesort. II - A estratégia apresentada em Java é o método de ordenação Quicksort. III - A estratégia apresentada é baseada em dividir para conquistar. IV - A estratégia apresentada leva o maior elemento para a última posição a cada passada. V - A estratégia apresentada leva o menor elemento para a primeira posição a cada passada.
Estão CORRETAS as afirmativas

  • A I, IV e V, apenas.
  • B I e III, apenas.
  • C II e III, apenas.
  • D II, III e IV, apenas.
  • E I e V, apenas.
A técnica que consiste em comparar elementos adjacentes em um vetor e permutar seus valores se eles estiverem fora de ordem é conhecida como
  • A ordenação por seleção.
  • B ordenação de Shell.
  • C ordenação vetorial.
  • D ordenação por inserção.
  • E ordenação por bolhas.

Um pseudocódigo do algoritmo de classificação por troca de partição está ilustrado abaixo, através do procedimento SORT. Ele apresenta a lógica utilizada para a ordenação de um arranjo de elementos. A chave para o algoritmo é o procedimento PARTITION, que reorganiza o subarranjo A[p..r] localmente. PARTITION sempre seleciona um elemento como um pivô ao redor do qual será feito o particionamento do subarranjo. Sob qual outro nome o algorítimo em questão é conhecido?
SORT (A, p, r) if p < r then q ← PARTITION (A, p, r) SORT (A, p, q - 1) SORT (A, q + 1, r)

  • A Bubble sort
  • B Heapsort
  • C Quick sort
  • D Selection sort
  • E Merge sort