Questões de Concurso
Sobre algoritmos de ordenação em algoritmos e estrutura de dados
Foram encontradas 247 questões

Sobre a notação do algoritmo, for-to indica o incremento da variável de controle do laço, for-downto indica o decremento da variável de controle do laço e exchangewith denota a permuta de valores entre duas posições de memória. O pseudocódigo refere-se ao seguinte algoritmo:
I O algoritmo quicksort é muito eficiente quando temos uma quantidade pequena de elementos a ordenar. II O algoritmo shell utiliza intensamente a inserção direta. III No algoritmo bubble sort o número de variáveis envolvidas é pequeno.
As afirmativas I, II e III são, respectivamente:
Um algoritmo de computador é composto por várias etapas que, em conjunto, executam uma determinada tarefa. Sobre os algoritmos de computadores, julgue o item a seguir.
Entre alguns exemplos, estão os algoritmos
destinados à busca e à ordenação de dados
e também os que percorrem grafos para o
cumprimento de tarefas.
Na tabela a seguir, considerando os métodos de ordenação, que visam a colocar uma lista em ordem para facilitar a busca de informações nela contidas, associe os métodos à sua respectiva descrição.
Método de Ordenação
(1) Bubble Sort
(2) Insert Sort
(3) Select Sort
(4) Shellsort
(5) Mergesort
(6) Quicksort
(7) Heapsort
Descrição
( ) Neste método, a lista é subdividida em h-listas, as quais são ordenadas com um método de ordenação qualquer. Esse procedimento é repetido para valores decrescentes de h, sendo que o último valor de h tem que ser 1.
( ) Neste método, são usados, inicialmente, os elementos da lista que são inseridos em um heap binário crescente. Em seguida, são feitas sucessivas remoções do menor elemento do heap, colocando os elementos removidos do heap de volta na lista.
( ) Neste método, a lista é dividida em duas metades. Essas metades são ordenadas recursivamente e depois são intercaladas. Para tanto, faz-se uso das variáveis i e j para percorrer a metade esquerda e a metade direita, respectivamente. Em cada iteração, compara-se o elemento na posição i com o elemento na posição j. O menor deles é copiado para um vetor auxiliar. Esse procedimento é repetido até que uma das duas metades tenha sido totalmente copiada para o vetor auxiliar.
( ) Neste método, os elementos da lista são movidos para as posições adequadas de forma contínua. Se um elemento está inicialmente numa posição i e, para que a lista fique ordenada, ele deve ocupar a posição j, então ele terá que passar por todas as posições entre i e j. Em cada iteração do método, percorre-se a lista a partir de seu início, comparando cada elemento com seu sucessor, trocando-os de posição se houver necessidade.
( ) Neste método, a lista é dividida em parte esquerda e parte direita, sendo que os elementos da parte esquerda são todos menores do que os elementos da parte direita. Em seguida, as duas partes são ordenadas recursivamente.
( ) Neste método, considera-se que a lista está dividida em parte esquerda, já ordenada, e parte direita, em possível desordem. Além disso, os elementos da parte esquerda são todos menores ou iguais aos elementos da parte direita. Cada iteração consiste em escolher o menor elemento da parte direita (pivô) e trocá-lo com o primeiro elemento da parte direita. Com isso, a parte esquerda aumenta, pois passa a incluir o pivô, e a parte direita diminui.
( ) Neste método, considera-se que a lista está dividida em parte esquerda, já ordenada, e parte direita, em possível desordem. Inicialmente, a parte esquerda contém apenas o primeiro elemento da lista. Cada iteração consiste em colocar o primeiro elemento da parte direita (pivô) na posição adequada da parte esquerda, de modo que a parte esquerda continue ordenada.
Tabela: métodos de ordenação
Fonte: Próprio autor
A sequência correta desta associação é
Analise o trecho do algoritmo abaixo representado em português estruturado:
É correto afirmar que:
Julgue o item subsequente, relativo a estrutura de dados.
Situação hipotética: Para ordenar os números do vetor (0, 4, 2, 1, 3, 5, 7, 8, 9, 6), foram realizados os passos mostrados na figura a seguir, com seus respectivos resultados a cada passagem, tendo sido o número 5 do vetor utilizado inicialmente como pivô.

Assertiva: Nessa situação, foi utilizado o método de ordenação do tipo quicksort.
Julgue o item subsequente, relativo a estrutura de dados.
Situação hipotética: Para ordenar os números do vetor (30, 50, 10, 20, 40), foram realizados os passos i a vi, apresentados a seguir, com os respectivos resultados a cada passagem.
i 30 > 50?
30,50,10,20,40
ii 50 > 10?
30,10,50,20,40
iii 50 > 20?
30,10,20,50,40
iv 50 > 40?
30,10,20,40,50
v 30 > 10?
10,30,20,40,50
vi 30 > 20?
10,20,30,40,50
Assertiva: Nessa situação, os passos realizados constituem um
algoritmo do tipo bubble sort, ou bolha.
Analise o algoritmo de ordenação que se segue.
Com o uso desse algoritmo, qual é a quantidade de trocas
realizadas para ordenar a sequência dado?
Os métodos de ordenação são empregados para rearranjar um conjunto de objetos em uma ordem específica. Considere as seguintes proposições sobre esses métodos:
I. Um método de ordenação é dito estável se a ordem relativa dos itens com chaves iguais mantém-se inalterada pelo processo de ordenação.
II. A estabilidade de um método de ordenação é importante quando o conjunto de dados já está parcialmente ordenado.
III. Na ordenação interna, o número de registros a serem ordenados é pequeno o bastante para que todo o processo se desenvolva na memória interna (principal).
IV. Na ordenação externa, o número de registros a ser ordenado é maior do que o número que cabe na memória interna.
Assinale a alternativa CORRETA:
Analise as proposições abaixo sobre algoritmos e estrutura de dados:
I. Os métodos de ordenação por inserção e bolha possuem complexidade O(n2 ) em relação ao número de comparações.
II. Embora O(n2 ), o método de ordenação por inserção possui complexidade Ω(n) em relação ao número de comparações.
III. O método de ordenação por inserção, assim como o Quicksort, é estável.
IV. O método de ordenação Quicksort tem complexidade O(n2 ) em seu pior caso.
Assinale a alternativa CORRETA: