Questões de Concurso
Sobre algoritmos de ordenação em algoritmos e estrutura de dados
Foram encontradas 267 questões
Sobre o método de ordenação por inserção, assinale a alternativa INCORRETA:
(__)O algoritmo de busca binária exige que o conjunto de dados esteja previamente ordenado para funcionar corretamente em tempo logarítmico.
(__)O QuickSort apresenta sua pior performance, com complexidade quadrática, quando o pivô escolhido é repetidamente o menor ou o maior elemento da lista.
(__)O algoritmo Bubble Sort é classificado como estável, o que significa que ele preserva a ordem relativa de elementos com chaves de ordenação idênticas.
(__)A busca sequencial é tecnicamente impossível de ser realizada em listas que contenham elementos do tipo ponto flutuante de precisão dupla.
Após análise, assinale a alternativa que apresenta a sequência correta dos itens acima, de cima para baixo:
Julgue o próximo item, a respeito de computação e estrutura de dados.
Ao se utilizar o método de ordenação por seleção, sempre serão necessárias 10 comparações para ordenar um conjunto com cinco elementos.
Considere o seguinte código Python que implementa um método de ordenação:

Qual método de ordenação é implementado no código acima?
sort = (array) => { if (array.length <= 1) { return array; } const pivot = array[array.length - 1]; const left = []; const right = []; for (let i = 0; i < array.length - 1; i++) { if (array[i] < pivot) { left.push(array[i]); } else {
right.push(array[i]); } } return [...sort(left), pivot, ...sort(right)];
}
Considerando n como o tamanho do vetor, assinale a alternativa CORRETA que corresponde à complexidade média de tempo do algoritmo na notação Big-O:
Sendo assim, sobre os algoritmos de ordenação, podemos afirmar que
I. Bubble sort é um algoritmo de ordenação simples e muito eficiente para grande conjunto de dados.
II. Insertion sort é um algoritmo de ordenação utilizado para um pequeno número de elementos.
III. Quick sort é um algoritmo de ordenação mais rápido, que emprega a técnica de divisão e conquista.
IV. Selection sort recebe esse nome pela maneira como ele percorre o array ao longo das iterações: ele seleciona o menor elemento atual e o troca de lugar.
Estão corretas apenas as afirmativas
Assinale a opção que representa a complexidade O (n log n) mais comummente observada em algoritmos de ordenação eficientes.
De acordo com o autor Glenn Brookshear, os algoritmos de ordenação utilizam estruturas iterativas para reorganizar uma lista desordenada em ordem. Na figura abaixo, é CORRETO afirmar que ela representa o seguinte algoritmo de ordenação:

Fonte: Ciência da Computação: Uma Visão Abrangente. Glenn Brokshear. Bookman. 11 edição, p. 177.
Esse tipo de problema é considerado solucionável em tempo "razoável" ou eficiente. Dado esse contexto, analise as afirmativas a abaixo sobre a classe P e a complexidade polinomial.
I. Algoritmos de ordenação como a ordenação por inserção têm uma complexidade polinomial de O(n 2 ), o que os coloca na classe P.
II. A classe P engloba todos os problemas que podem ser resolvidos por algoritmos em tempo polinomial, independente de hardware.
III. Algoritmos de pesquisa binária, embora eficientes, não são classificados como pertencentes à classe P, pois sua complexidade é logarítmica, e não polinomial.
IV. Um algoritmo que possui uma complexidade de tempo O(n k ), onde k é constante, resolve o problema no pior caso em tempo polinomial e, portanto, pertence à classe P.
Estão corretas as afirmativas: