1 Marcar para revisão
O "Bubble Sort", ou "Ordenação por
Bolha" em tradução livre, é um dos
algoritmos de ordenação mais
simples.
O que acontece com o maior valor na
lista durante o processo de
ordenação crescente do "Bubble
Sort"?
A É movido para a esquerda.
B É deixado onde está.
C É movido para o centro.
D É empurrado para baixo.
É continuamente
E empurrado até o fim da
passagem.
2 Marcar para revisão
Uma empresa de tecnologia está
desenvolvendo um sistema de
arquivos que exige ordenação
estável para manter a ordem de
registros iguais.
Qual algoritmo de ordenação oferece
a característica de ser estável?
A Quick Sort.
B Heap Sort.
C Shell Sort.
D Merge Sort.
E Radix Sort.
3 Marcar para revisão
A ordenação de elementos em um
vetor pode ser executada a partir de
diversos algoritmos conhecidos que
são adequados para situações
específicas. Sobre algoritmos de
ordenação, analise as seguintes
afirmativas:
I. O algoritmo bubble sort é eficiente
para ordenar poucos elementos, mas
é lento para ordenar muitos itens.
II. O algoritmo selection sort para
ordenação crescente consiste em
mover o menor valor do vetor para a
primeira posição; depois, o segundo
menor para a segunda posição; e
assim sucessivamente, até os dois
últimos valores.
III. O algoritmo quick sort ordena os
valores de um vetor por meio de
sucessivas seleções do elemento
correto a ser posicionado em um
segmento ordenado.
Estão corretas as afirmativas:
A I apenas
B II apenas
C I e II
D I e III
E I, II e III
4 Marcar para revisão
"Quick Sort" é um dos algoritmos de
ordenação mais rápidos e eficientes
disponíveis, e é frequentemente a
escolha preferida em aplicações
práticas quando a estabilidade não é
uma preocupação principal.
Qual é o método utilizado no
particionamento do "Quick Sort"?
Utilizar o elemento médio
A
do vetor.
Utilizar o primeiro ou o
B
último elemento do vetor.
Utilizar um elemento
C
aleatório do vetor.
Utilizar o elemento mais
D
frequente do vetor.
Utilizar o elemento central
E
do vetor.
5 Marcar para revisão
Para melhorar a eficiência de uma
aplicação de banco de dados, um
desenvolvedor opta por utilizar uma
árvore AVL. Essa escolha é devido à
necessidade de manter a estrutura
da árvore balanceada, assegurando
tempos de busca, inserção e
remoção consistentemente rápidos.
Em uma árvore AVL, qual é o
propósito da rotação de nós?
A Aumentar a altura da árvore.
B Reduzir o número de nós.
C Balancear a árvore.
Converter em árvore binária
D
de busca.
E Eliminar nós duplicados.
6 Marcar para revisão
Em um sistema de gerenciamento de
dados, uma árvore AVL foi
implementada para otimizar as
buscas. Devido ao grande volume de
dados, a eficiência na inserção e
remoção é crucial. A árvore AVL é
escolhida por sua capacidade de
auto-balanceamento após cada
operação.
Qual é a principal característica de
uma árvore AVL que a diferencia de
uma árvore binária de busca comum?
A Altura máxima de log n.
Não permite valores
B
duplicados.
C Cada nó tem até dois filhos.
Sempre armazena dados
D
inteiros.
Nós com um único filho são
E
proibidos.
7 Marcar para revisão
Um programador está
implementando uma árvore binária
de busca. Ele precisa garantir que as
buscas, inserções e remoções sejam
realizadas de forma eficiente. A
estrutura da árvore deve evitar o pior
caso, onde ela se degenera em uma
lista linear.
Qual método de percurso de árvore é
ideal para imprimir todos os
elementos de uma árvore binária de
busca em ordem crescente?
A Percurso em pré-ordem.
SM2 Algoritmos e Complexidade
B Percurso em pós-ordem.
C
Percurso em ordem 00 : 37 : 03 Ocultar
simétrica. hora min seg
D Percurso em nível. Questão 9 de 10
1 2 3 4 5
E Percurso em espiral.
6 7 8 9 10
Respondidas (10) Em branco (0)
8 Marcar para revisão
Finalizar prova
Na otimização de rotas de entrega, é
vital determinar o caminho mais
eficiente entre múltiplos pontos.
Utilizando grafos, pode-se modelar
esta questão para minimizar custos e
tempo.
Qual algoritmo é preferencialmente
utilizado para determinar o caminho
mais curto em um grafo
representando rotas de entrega?
Algoritmo de Floyd-
A
Warshall.
B Algoritmo de Prim.
C Busca em Largura.
D Coloração de grafos.
E Algoritmo de Dijkstra.
9 Marcar para revisão
(COMPERVE - UFRN - Engenheiro -
Engenharia da Computação - 2019)
O código abaixo pode ser utilizado
para atravessar um grafo:
Entrada: um gráfico G e um vértice
v de G
Saída: todos os vértices
alcançáveis de v marcados
função DFS(G,v):
marque v
para todas as arestas adjacentes
a v, faça
se vértice w não estiver
marcado, então
Chame recursivamente
DFS(G,w)
fim se
fim para
fim função
Entre os diversos tipos de algoritmos
utilizados para atravessar grafos,
esse código implementa o algoritmo:
Busca em profundidade ou
A
depth first search.
Busca em largura ou
B
breadth first search.
Busca melhor-primeiro ou
C
best first search.
Busca exaustiva ou brute
D
force search.
Busca pelo caminho mínimo
E
(shortest path).
10 Marcar para revisão
(CESPE/CEBRASPE - IFF - Professor
- Engenharia da Computação - 2018)
Considerando o grafo precedente,
assinale a opção correta:
A Os nós 1 e 4 são adjacentes.
O nó 5 é adjacente a si
B
mesmo.
Os arcos a1 e a2 são arcos
C
irmãos.
D Os nós 2 e 3 têm grau 3.
O grafo não pode ser
E
classificado como conexo.