

Seu próximo nível começa aqui
Com a Assinatura Ilimitada, você tem tudo que precisa para sua aprovação.
Com a Assinatura Ilimitada, você combina prática, teoria e método em uma única assinatura com tudo que você precisa para sua aprovação.
Um professor está precisando ordenar os seus alunos pelas notas obtidas na última avaliação. Considerando que são muitos alunos distribuídos aleatoriamente e que a menor nota foi zero e a maior foi dez, qual o algoritmo de ordenação apropriado que o professor deve utilizar para essa tarefa?
Bubble sort
Merge sort
Insertion sort
Count sort
Um algoritmo de ordenação é estável quando preserva a ordem relativa de elementos com chaves iguais. São exemplos de algoritmos de ordenação estáveis:
InsertionSort, MergeSort e BubbleSort.
CountingSort, HeapSort e SelectionSort.
BubbleSort, QuickSort e MergeSort.
SelectionSort, RadixSort e HeapSort.
InsertionSort, BubbleSort e QuickSort.
A Secretaria de Saúde de determinado município desenvolveu um sistema para organizar a fila de pacientes em uma unidade de pronto atendimento. O sistema precisa ordenar os registros com base na prioridade de atendimento (alta, média ou baixa) e, dentro de cada nível de prioridade, ordenar os pacientes de acordo com a data e hora de chegada. Durante os testes do sistema, a equipe de TI implementou diferentes algoritmos de ordenação, analisando suas características e desempenho.
Cada um desses algoritmos foi descrito pelos programadores da seguinte forma:
• Implementação 1: o algoritmo percorre repetidamente a lista, comparando e trocando elementos adjacentes até que toda a lista esteja ordenada.
• Implementação 2: a lista é dividida em duas metades recursivamente, e as metades ordenadas são combinadas para formar a lista final.
• Implementação 3: o algoritmo constrói a lista ordenada elemento por elemento, inserindo cada novo item na posição correta.
• Implementação 4: uma estrutura de heap é utilizada para armazenar os elementos, garantindo que o maior ou menor elemento seja extraído de forma eficiente.
Com base nas descrições anteriores, assinale a alternativa que relaciona corretamente as implementações aos algoritmos de ordenação.
Implementação 1 – Quick Sort Implementação 2 – Heap Sort Implementação 3 – Merge Sort Implementação 4 – Selection Sort
Implementação 1 – Bubble Sort Implementação 2 – Merge Sort Implementação 3 – Insertion Sort Implementação 4 – Heap Sort
Implementação 1 – Selection Sort Implementação 2 – Heap Sort Implementação 3 – Bubble Sort Implementação 4 – Quick Sort
Implementação 1 – Insertion Sort Implementação 2 – Selection Sort Implementação 3 – Quick Sort Implementação 4– Merge Sort
Observe o código Python a seguir.

A partir do código apresentado, que implementa um algoritmo de ordenação, a função metodo_ordenacao que implementa o algoritmo é
Merge Sort.
Quick Sort.
Bubble Sort.
Selection Sort.
Considere o seguinte código Python que implementa um método de ordenação:
def ordenar(lista):
n = len(lista)
for i in range(n):
trocado = False
for j in range(0, n - i - 1):
if lista[j] > lista[j + 1]:
lista[j], lista[j + 1] = lista[j + 1], lista[j]
trocado = True
if not trocado:
break
return lista
# Exemplo de uso
numeros = [64, 34, 25, 12, 22, 11, 90]
print(ordenar(numeros))
Qual método de ordenação é implementado no código acima?
QuickSort.
MergeSort.
BubbleSort.
InsertionSort.
SelectionSort.


Seu próximo nível começa aqui

Seu próximo nível começa aqui
Destrave a preparação completa para sua aprovação. Com a Assinatura Ilimitada, você estuda com os melhores professores do Brasil e todos os recursos Gran.
vetor = [11, 4, 7, 2, 6]
n = tamanho(vetor)
para (i de 0 até (n ‑ 2)) faça
para (j de 0 até (n ‑ 2 ‑ i)) faça
se vetor[j] > vetor[j + 1] então
temp = vetor[j]
vetor[j] = vetor[j + 1]
vetor[j + 1] = temp
fim se
fim para
fim para
escreva(vetor)
Com base nesse algoritmo, desenvolvido em pseudocódigo, assinale a opção que apresenta corretamente o resultado de “escreva(vetor)”.
[4, 7, 2, 6, 11]
[2, 4, 7, 6, 11]
[2, 4, 6, 7, 11]
[4, 2, 6, 11, 7]
[11, 7, 6, 4, 2]
Em lógica de programação, um algoritmo é uma sequência finita de instruções bem definidas e não ambíguas, projetada para resolver um problema específico. Para que um algoritmo seja considerado correto e eficiente, ele deve processar dados de entrada e produzir uma saída desejada. No contexto de estruturas de dados, os algoritmos de ordenação são usados para organizar uma coleção de itens em uma ordem específica. Qual é a principal característica do algoritmo de ordenação conhecido como "Bubble Sort" (Ordenação por Bolha)?
Escolher um elemento como pivô e particionar a lista de forma que todos os elementos menores que o pivô venham antes dele, e todos os elementos maiores venham depois, aplicando o processo recursivamente.
Comparar repetidamente pares de elementos adjacentes na lista e trocá-los de posição se estiverem na ordem errada, fazendo com que os maiores elementos "flutuem" para o final da lista a cada passagem.
Dividir a lista em duas metades, ordenar recursivamente cada metade e, em seguida, mesclar (merge) as duas metades ordenadas para produzir a lista final.
Selecionar o menor elemento da porção não ordenada da lista e trocá-lo com o primeiro elemento dessa porção, reduzindo iterativamente a parte não ordenada.
O Bubble Sort é um algoritmo simples de ordenação que percorre repetidamente a lista, compara elementos adjacentes e os troca se estiverem na ordem errada. Esse processo é repetido até que a lista esteja ordenada. Considerando essas informações e o uso do algoritmo Bubble Sort, qual das seguintes afirmações é verdadeira?
O Bubble Sort é sempre a escolha mais eficiente para ordenar grandes conjuntos de dados.
O Bubble Sort possui uma complexidade de tempo médio O(n log n).
O Bubble Sort é estável, mas consome mais recursos em comparação com outros algoritmos de ordenação.
O Bubble Sort é um algoritmo de ordenação adaptativo, ajustando-se automaticamente à distribuição dos dados.
A seguinte figura apresenta um algoritmo de ordenação da tabela L, de n elementos, segundo o seu campo chave. Assinale a alternativa que descreve o método de ordenação.

Bubblesort
Mergesort
Quicksort
Heapsort
Existe a necessidade de ordenar dados em alguns contextos, demandando a aplicação de algoritmos de ordenação específicos, como o Bubble Sort, sobre o qual é válido afirmar que:
os dados armazenados são comparados, e cada elemento da posição i é comparado com o elemento da posição i+1, e quando a ordenação procurada é encontrada, uma troca de posições entre os elementos é feita
o vetor é dividido em vetores com a metade do tamanho do original por meio de um procedimento recursivo; essa divisão ocorre até que cada vetor fique com apenas um elemento e, ao fim, estes vetores sejam ordenados e intercalados
o vetor é dividido em duas partes, sendo uma parte ordenada e a outra não ordenada; o algoritmo busca o menor elemento na parte não ordenada e o coloca no início da parte ordenada, repetindo esse processo até que todo o vetor esteja completamente ordenado
o vetor é dividido em duas partes, sendo uma parte ordenada e a outra não ordenada; o algoritmo busca o menor elemento na parte não ordenada e o coloca no início da parte ordenada, repetindo esse processo até que todo o vetor esteja completamente ordenado


Seu próximo nível começa aqui
Seu desenvolvimento não pode ter limites. Garanta sua Assinatura Ilimitada e libere uma preparação completa com os melhores professores do Brasil.
Um analista tem disponíveis quatro algoritmos de ordenação: inserção, mergesort, heapsort e bubblesort. Como o analista não tem conhecimento sobre o tamanho do conjunto de dados e as suas condições de ordenação inicial, resolve utilizar como critério de escolha a menor complexidade do pior caso.
Considerando-se esse critério de menor complexidade do pior caso, quais seriam os dois algoritmos que o analista deve utilizar para fazer uma primeira seleção?
Inserção e Bubblesort
Mergesort e Inserção
Mergesort e Heapsort
Bubblesort e Heapsort
Mergesort e Bubblesort
Medir a complexidade dos métodos de ordenação é fundamental para entender o desempenho desses algoritmos e poder fazer escolhas adequadas dependendo do contexto do problema. Qual método de ordenação o pior caso tem a mesma complexidade do método Quick Sort no pior caso?
Heap Sort.
Buble Sort.
Merge Sort.
Radix Sort.
Considere o seguinte fragmento de código, escrito na linguagem java, baseado em GEEKS FOR GEEKS (2022):

(GEEKS FOR GEEKS. Java Program for Bitonic Sort. Noida: Geeks for Geeks, 2022. Disponível em: https://www.geeksforgeeks.org/java-program-for-bitonic-sort/. Acesso em: 14 abr. 2024.)
Escolha a opção que indique o resultado obtido após a sua execução na última versão oficial do Java.
3 7 2 1 5.
1 2 3 7 5.
1 2 3 5 7.
7 5 3 2 1.
Apresentação de uma mensagem de erro.
Relacione adequadamente as colunas a seguir sobre os métodos de ordenação à sua descrição correspondente.
1. Bubble Sort.
2. Merge Sort.
3. Quick Sort.
4. Selection Sort.
5. Insertion Sort.
( ) Divide a lista em sublistas menores; ordena essas sublistas e as mescla para obter a lista ordenada.
( ) Algoritmo de comparação que percorre repetidamente a lista; compara elementos adjacentes e troca-os se estiverem na ordem errada.
( ) Divide a lista em duas partes; ordena-as individualmente e combina-as para obter a lista ordenada.
( ) Algoritmo que seleciona iterativamente o elemento mínimo da lista e coloca-o na posição correta.
( ) Algoritmo de comparação que escolhe um elemento como pivô; divide a lista em dois subconjuntos e ordena-os recursivamente.
A sequência está correta em
1, 3, 2, 5, 4.
5, 1, 2, 4, 3.
3, 4, 1, 5, 2.
4, 5, 3, 1, 2.
Os algoritmos de ordenação desempenham um papel crucial em ciência da computação, permitindo organizar elementos de uma lista em uma ordem específica, como crescente ou decrescente. Um desses algoritmos funciona comparando repetidamente pares adjacentes de elementos e trocando-os se estiverem na ordem errada, até que toda a lista esteja ordenada. Sabendo disso, assinale a alternativa que apresenta CORRETAMENTE esse algoritmo de ordenação.
Bucket Sort.
Quick Sort.
Merge Sort.
Bubble Sort.
Radix Sort.


Seu próximo nível começa aqui

Seu próximo nível começa aqui
Destrave a preparação completa para sua aprovação. Com a Assinatura Ilimitada, você estuda com os melhores professores do Brasil e todos os recursos Gran.
O analista José precisa escolher entre dois algoritmos, Abusca e Cbusca. José sabe que, sendo N o tamanho da entrada do algoritmo, Abusca requer 2N + log2(N) operações para ser executado. Já o Cbusca requer N4 + N operações para ser executado. José determinou, na notação O-grande, a complexidade de tempo no pior caso para cada algoritmo e, por fim, deve escolher o algoritmo que apresenta a menor ordem de complexidade no pior caso.
José deve escolher o algoritmo:
Cbusca, que possui complexidade O(N);
Abusca, que possui complexidade O(2N);
Cbusca, que possui complexidade O(N4);
Cbusca, que possui complexidade O(3N);
Abusca, que possui complexidade O(log(N)).
O Bubble Sort, também conhecido como método bolha, é um algoritmo utilizado para organizar uma sequência de números ou outros elementos em ordem crescente ou decrescente. A implementação percorre a sequência de itens ordenáveis e faz a troca, quando necessária. Nesse sentido, para ordenar, de modo crescente, o array {11, 5, 7, 3, 2, 1}, utilizando o método bolha, serão necessárias
12 trocas.
9 trocas.
14 trocas.
3 trocas.
Um programador quer ordenar a lista [5, 4, 3]. Qual alternativa representa todas as situações dessa lista até a sua completa ordenação utilizando o método Bubble Sort?
[5, 4, 3], [4, 5, 3], [4, 3, 5], [3, 4, 5], [3, 4, 5]
[5, 4, 3], [4, 3, 5], [3, 4, 5], [3, 4, 5], [3, 4, 5]
[5, 4, 3], [4, 5, 3], [4, 5, 3], [3, 4, 5], [3, 4, 5]
[5, 4, 3], [4, 5, 3], [3, 4, 5]
[5, 4, 3], [4, 3, 5], [3, 4, 5]
Analise as assertivas abaixo sobre notação big-O e complexidade de algoritmos, observando as afirmações sobre algoritmos de ordenamento:
I. O algoritmo quicksort tem uma complexidade no caso médio de Θ(nlog(n)).
II. O algoritmo mergesort tem uma complexidade no pior caso de O(n log(n)).
III. O algoritmo bubble sort tem uma complexidade no melhor caso de Ω(n).
IV. O algoritmo selection sort tem uma complexidade no melhor caso de Ω(n).
Quais estão corretas?
Apenas I.
Apenas II.
Apenas III e IV.
Apenas I, II e III.
I, II, III e IV.
Analise as assertivas abaixo:
I. Uma pilha é um tipo abstrato de dados que, quando implementado, opera utilizando a estratégia LIFO (Last In First Out), enquanto uma fila opera utilizando a estratégia FIFO (First In First Out).
II. O algoritmo de Dijkstra resolve o problema de caminhos mínimos de fonte única em grafos dirigidos de forma gulosa.
III. Bubblesort é um algoritmo de ordenação que funciona permutando repetidamente elementos adjacentes que estão fora de ordem.
Quais estão corretas?
Apenas I.
Apenas II.
Apenas III.
Apenas I e III.
I, II e III.