Prévia do material em texto
14/12/2021 19:45 Exercícios Estrutura de Dados (Entrega: 07/12): Revisão da tentativa
https://virtual.ufmg.br/20212/mod/quiz/review.php?attempt=183966&cmid=38721 1/7
PAINEL > MINHAS TURMAS > 2021_2 - ESTRUTURAS DE DADOS - TF_TN_TW - METATURMA > LISTAS DE EXERCÍCIOS
> EXERCÍCIOS ESTRUTURA DE DADOS (ENTREGA: 07/12)
Iniciado em quinta, 2 Dez 2021, 20:35
Estado Finalizada
Concluída em quinta, 2 Dez 2021, 21:26
Tempo
empregado
51 minutos 7 segundos
Avaliar 3,50 de um máximo de 4,00(88%)
Questão 1
Correto
Atingiu 0,50 de 0,50
Sobre listas lineares, pode-se afirmar, EXCETO:
Escolha uma opção:
a. Para se criar um tipo abstrato de dados lista, foi necessário definir um conjunto de operações sobre objetos tipo lista adequado a
todas as aplicações.
b. São estruturas muito flexíveis podendo ter seu tamanho alterado em tempo de execução sob demanda.
c. No tipo abstrato de dados implementado por apontadores, cada item é encadeado com o seguinte por meio de variáveis do tipo
ponteiro, sendo que itens podem não estar em posições contíguas de memória.
d. São capazes de lidar com dados de tamanho e formato imprevisível.
e. No tipo abstrato de dados implementado por arranjo, os itens da lista são armazenados em posiçoes contíguas de memória
podendo a lista ser percorrida em qualquer direção.
Exatamente, alterativa incorreta.
A resposta correta é: Para se criar um tipo abstrato de dados lista, foi necessário definir um conjunto de operações sobre objetos tipo lista
adequado a todas as aplicações..
https://virtual.ufmg.br/20212/my/
https://virtual.ufmg.br/20212/course/view.php?id=11910
https://virtual.ufmg.br/20212/course/view.php?id=11910#section-9
https://virtual.ufmg.br/20212/mod/quiz/view.php?id=38721
14/12/2021 19:45 Exercícios Estrutura de Dados (Entrega: 07/12): Revisão da tentativa
https://virtual.ufmg.br/20212/mod/quiz/review.php?attempt=183966&cmid=38721 2/7
Questão 2
Correto
Atingiu 0,50 de 0,50
Dada a árvore abaixo:
Indique a ordem em que as chaves serão impressas para cada tipo de caminhamento
Por nível
Pós-Ordem
Central (ou Em ordem)
Pré-ordem
10 5 15 3 7 13 16 1 4 9 14
1 4 3 9 7 5 14 13 16 15 10
1 3 4 5 7 9 10 13 14 15 16
10 5 3 1 4 7 9 15 13 14 16
A resposta correta é: Por nível → 10 5 15 3 7 13 16 1 4 9 14, Pós-Ordem → 1 4 3 9 7 5 14 13 16 15 10, Central (ou Em ordem) → 1 3 4 5 7 9 10
13 14 15 16, Pré-ordem → 10 5 3 1 4 7 9 15 13 14 16.
14/12/2021 19:45 Exercícios Estrutura de Dados (Entrega: 07/12): Revisão da tentativa
https://virtual.ufmg.br/20212/mod/quiz/review.php?attempt=183966&cmid=38721 3/7
Questão 3
Correto
Atingiu 0,50 de 0,50
Considere o trecho do código abaixo e marque a alternativa que representa o que será impresso na tela. Considere que as estruturas de
dados armazenam inteiros e que os métodos de remoção (Desenfileira e Desempilha) retornam os inteiros removidos.
TipoFila fila;
TipoPilha pilha;
FFVazia(&fila); // faz fila vazia
FPVazia(&pilha); // faz pilha vazia
int i = 0;
int k = 4;
for(i=0; i<10; i++) {
Enfileira(i*k, &fila);
}
for(i=0; i<5; i++) {
Empilha(Desenfileira(&fila), &pilha);
}
for(i=0; i<5; i++) {
Enfileira(Desempilha(&pilha), &fila);
}
for(i=0; i<10; i++) {
printf("(%d) ", Desenfileira(&fila));
}
O valor impresso pelo programa será:
a. (0) (4) (8) (12) (16) (20) (24) (28) (32) (36)
b. (20) (24) (28) (32) (36) (16) (12) (8) (4) (0)
c. (16) (12) (8) (4) (0) (20) (24) (28) (32) (36)
d. (20) (24) (28) (32) (36) (0) (4) (8) (12) (16)
e. (36) (32) (28) (24) (20) (0) (4) (8) (12) (16)
Sua resposta está correta.
A resposta correta é: (20) (24) (28) (32) (36) (16) (12) (8) (4) (0).
14/12/2021 19:45 Exercícios Estrutura de Dados (Entrega: 07/12): Revisão da tentativa
https://virtual.ufmg.br/20212/mod/quiz/review.php?attempt=183966&cmid=38721 4/7
Questão 4
Correto
Atingiu 0,50 de 0,50
Questão 5
Correto
Atingiu 0,50 de 0,50
São exemplos de aplicações práticas de listas que seguem o princípio LIFO:
Escolha uma opção:
a. o registro ordenado dos maiores escores obtidos em um jogo de videogame; a verificação da abertura e do fechamento de
parênteses em expressões aritméticas
b. a alocação de uma fatia de tempo de CPU para múltiplas aplicações concorrentes, realizadas por um escalonador round-robin; o
gerenciamento de pacotes em redes de computadores, implementado em roteadores
c. a verificação de agrupamentos de tags HTML de abertura e fechamento, implementada em navegadores web; o gerenciamento de
trabalhos de impressão realizado pelo processo spooler de impressão
d. o gerenciamento de endereços visitados mais recentemente, encontrado em navegadores web; o mecanismo de reversão de
operações mais recentes, implementado em editores de texto
e. o cálculo de espaço em disco consumido por um diretório (e seus componentes) em um sistema de arquivos; a procura por padrões
em cadeias de caracteres por meio da técnica de força bruta
Sua resposta está correta.
A resposta correta é: o gerenciamento de endereços visitados mais recentemente, encontrado em navegadores web; o mecanismo de
reversão de operações mais recentes, implementado em editores de texto.
Dado um conjunto C contendo n inteiros distintos, qual das seguintes estruturas de dados em memória principal permite construir um
algoritmo para encontrar o valor máximo de C em tempo constante?
Escolha uma opção:
a. Uma lista duplamente encadeada ordenada em ordem crescente
b. Um vetor ordenado
c. Uma lista encadeada simples ordenada em ordem crescente
d. Um vetor não ordenado
e. Uma árvore binária de busca balanceada
Sua resposta está correta.
A resposta correta é: Um vetor ordenado.
14/12/2021 19:45 Exercícios Estrutura de Dados (Entrega: 07/12): Revisão da tentativa
https://virtual.ufmg.br/20212/mod/quiz/review.php?attempt=183966&cmid=38721 5/7
Questão 6
Incorreto
Atingiu 0,00 de 0,50
Que COMPORTAMENTO tem o TAD abaixo, se definirmos suas operações de inserção e remoção no pseudo-código abaixo:
função inserir (novoElemento) {
n = numero de elementos antes de inserir novo elemento;
ENFILEIRAR(novoElemento);
for (i de 0 a n) {
p = DESENFILEIRAR(); // frente da fila
ENFILEIRAR(p);
}
}
função Elemento remover () {
return DESENFILEIRAR(); // frente da fila
}
Escolha uma opção:
a. Primeiro a entrar é o primeiro a sair (FIFO)
b. Último a entrar é o primeiro a sair (LIFO)
c. Comportamento de lista
d. Comportamento de árvore
e. Último a entrar é o último a sair (LILO)
A resposta correta é: Último a entrar é o primeiro a sair (LIFO).
14/12/2021 19:45 Exercícios Estrutura de Dados (Entrega: 07/12): Revisão da tentativa
https://virtual.ufmg.br/20212/mod/quiz/review.php?attempt=183966&cmid=38721 6/7
Questão 7
Correto
Atingiu 0,50 de 0,50
Em relação ao código abaixo, considere que (1) TipoLista.Primeiro aponta para uma célula cabeça da lista, que está sempre vazia, (2)
TipoLista.Primeiro->Prox aponta para o primeiro item válido da lista e TipoLista.Ultimo aponta para o último item da lista. Considerando o
código abaixo, marque a alternativa INCORRETA.
typedef struct {
int Chave;
} TipoItem;
typedef struct Celula_str {
TipoItem Item;
struct Celula_str *Prox;
} Celula;
typedef struct {
Celula *Primeiro, *Ultimo;
} TipoLista;
Celula* buscaCelula(TipoItem x, Celula* aux) {
if(aux->Item.Chave == x.Chave)
return aux;
return buscaCelula(x, aux->Prox);
}
Escolha uma opção:
a. A função "buscaCelula" é uma implementação recursiva para encontrar a célula que está em uma determinada posição k
(exemplo: terceira posição) da lista.
b. A função "buscaCelula" não deve fazer parte dos métodos oferecidos pelo TAD Lista, pois esse método requer detalhes da
implementação da lista que devem ser transparentes para o usuário do TAD. No entanto, o método "buscaCelula" pode ser usado
pelos métodos internos do TAD.
c. A ordem de complexidade da função "buscaCelula" é O(n), em que n é o número de elementos dalista.
d. Deve-se chamar a função "buscaCelula" passando o TipoItem que queremos pesquisar e a primeira célula válida da lista, ou seja,
"buscaCelula(x, Lista.Primeiro->Prox)", considerando que x é um TipoItem e Lista é um TipoLista.
e. A condição de parada da função "buscaCelula" está incompleta. É preciso testar se aux é NULL, ou seja, as condições do "if"
deveriam ser "if(aux == NULL || aux->Item.Chave == x.Chave)".
A resposta correta é: A função "buscaCelula" é uma implementação recursiva para encontrar a célula que está em uma determinada posição k
(exemplo: terceira posição) da lista..
14/12/2021 19:45 Exercícios Estrutura de Dados (Entrega: 07/12): Revisão da tentativa
https://virtual.ufmg.br/20212/mod/quiz/review.php?attempt=183966&cmid=38721 7/7
Questão 8
Correto
Atingiu 0,50 de 0,50
Sobre árvores binárias, considere as afirmativas a seguir.
I. Qualquer nó de uma árvore binária é raiz de, no máximo, outras duas subárvores comumente denominadas subárvore direita e subárvore
esquerda.
II. Uma dada árvore binária A armazena números inteiros e nela foram inseridos 936 valores não repetidos. Para determinar se um número
x está entre os elementos dessa árvore, tal número será comparado, no máximo, com 10 números contidos na árvore A.
III. Uma dada árvore binária de busca A armazena números inteiros e nela foram inseridos 936 valores não repetidos. Para determinar se
um número x está entre os elementos dessa árvore, serão feitas, no máximo, 10 comparações.
IV. Uma dada árvore binária de busca A armazena números inteiros e nela foram inseridos 936 valores não repetidos. Supondo que r seja o
nó raiz da árvore A e que sua subárvore esquerda contenha 460 elementos e sua subárvore direita possua 475 elementos. Para determinar
se um número x pertence a essa árvore, serão feitas, no máximo, 476 comparações.
Assinale a alternativa correta.
Escolha uma opção:
a. Somente as afirmativas II, III e IV são corretas
b. Somente as afirmativas I, II e III são corretas
c. Somente as afirmativas I e II são corretas
d. Somente as afirmativas I e IV são corretas
e. Somente as afirmativas III e IV são corretas
Sua resposta está correta.
A resposta correta é: Somente as afirmativas I e IV são corretas.
◄ Exercícios Análise de Algoritmos Recursivos (Entrega: 23/11)
Seguir para...
TP1 - Playlist ►
https://virtual.ufmg.br/20212/mod/quiz/view.php?id=38720&forceview=1
https://virtual.ufmg.br/20212/mod/url/view.php?id=172104&forceview=1