Buscar

Apol 04 - Estrutura de Dados - 2019

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Questão 1/5 - Estrutura de Dados 
Na AULA 4 estudamos a inserção em uma árvore 
binária. Abaixo temos um código em linguagem C com 
uma função de inserção na árvore binária, 
considerando ela como uma Binary Search Tree (BST). 
 
1. void Inserir(ElementoDaArvoreBinaria ** 
ElementoVarredura, int num) { 
2. 
3. if (*ElementoVarredura == NULL) 
4. { 
5. ElementoDaArvoreBinaria *NovoElemento = 
NULL; 
6. NovoElemento = (ElementoDaArvoreBinaria 
*)malloc(sizeof(ElementoDaArvoreBinaria)); 
7. NovoElemento->esquerda = NULL; 
8. NovoElemento->direita = NULL; 
9. 
10. NovoElemento->dado = num; 
11. *ElementoVarredura = NovoElemento; 
12. return; 
13. } 
14. 
15. if (num < (*ElementoVarredura)->dado) 
16. { 
17. Inserir(&(*ElementoVarredura)->esquerda, num); 
18. } 
19. else 
20. { 
21. if (num >(*ElementoVarredura)->dado) 
22. { 
23. Inserir(&(*ElementoVarredura)->direita, num); 
24. } 
25. } 
26. } 
Acerca de árvores binárias e do código acima, assinale 
a alternativa CORRETA. 
Nota: 20.0 
 A Nas linhas 15 a 25 a função testa para qual ramo da árvore irá seguir, 
direito ou esquerdo, chamando novamente a função de inserção de 
forma recursiva. 
Você acertou! 
Correto. 
 B Na linha 3 temos um teste condicional simples que tem como objetivo 
verificar se a árvore binária está completamente vazia, ou não. 
Verifica se AQUELE ELEMENTO está vazio, não 
a arvore toda; 
 C Todo o código colocado entre as linhas 15 e 25 poderiam estar dentro de 
um SENÃO que faz parte da condicional da linha 4. 
Não seria possível isso, pois as linhas 15 a 25 
precisam ser executadas independentemente da 
condição da linha 3; 
 D Na linha 2 temos a declaração da função, onde o primeiro parâmetro é 
uma variável que foi declarada com dois asteriscos (**). Deveria ser 
somente um, pois dois asteriscos não são permitidos na linguagem C. 
É permitido e está correto. Porque temos um 
ponteiro para outro ponteiro, caracterizando dois 
asteriscos; 
 E O uso do um asterisco antes do nome da variável, como na linha 3 por 
exemplo, significa que queremos manipular o endereço daquela variável. 
O asterisco indica o conteúdo indireto para qual o 
ponteiro aponta. 
 
Questão 2/5 - Estrutura de Dados 
Na AULA 5 estudamos conceitos de grafos. 
Acerca de grafos, seus conceitos e suas definições, 
assinale a alternativa INCORRETA. 
Nota: 20.0 
 A Um grafo é uma estrutura de dados que funciona de uma maneira não 
linear, podendo ser construído sem nenhum padrão definido. 
 B Arestas são linhas de conexão entre grafos. 
Você acertou! 
São linhas de conexão entre vértices de um grafo. 
AULA 5 – TEMA 1. 
 C Podemos mapear um mapa rodoviário como uma malha de vértices e 
arestas conectadas. 
 D Podemos percorrer um grafo, andando por seus vértices e arestas, de 
maneira a encontramos os melhores caminhos nele. 
 E Um grafo é composto de vértices e arestas; 
 
Questão 3/5 - Estrutura de Dados 
Na AULA 4 estudamos conceitos de árvores binárias. 
Acerca de árvores, assinale a alternativa abaixo: 
 
1. ElementoDaArvoreBinaria *NovoElemento = NULL; 
2. NovoElemento = (ElementoDaArvoreBinaria 
*)malloc(sizeof(ElementoDaArvoreBinaria)); 
3. NovoElemento->esquerda = NULL; 
4. NovoElemento->direita = NULL; 
5. 
6. NovoElemento->dado = num; 
7. *ElementoVarredura = NovoElemento; 
Acerca de árvores e seus aspectos construtivos, 
assinale a alternativa INCORRETA. 
Nota: 0.0 
 A O código refere a inicialização de um nó da árvore, onde alocamos a 
variável na memória e inicializamos os campos do registro. 
Linha 2 contém a alocação, linhas 3, 4 e 5 contém 
a inicialização. 
 B Baseado no código acima, podemos afirmar com certeza que o 
registro que armazena cada elemento da árvore contém um dado do 
tipo inteiro e dois ponteiros. 
Não sabemos o tipo do dado pelo código acima. 
 C Na linha 2 alocamos uma variável na memória destinada ao programa. O 
espaço alocado é igual a quantidade de Bytes usada pelo registro 
ElementoDaArvoreBinaria. 
Sim. A função malloc em C faz alocação e a 
função sizeof diz o tamanho a ser alocado. 
 D Na linha 1, a variável NovoElemento é declarada como sendo um ponteiro 
para um tipo de variável chamado ElementoDaArvoreBinaria. 
Sim. O asterisco indicará o ponteiro; 
 E Nas linhas 3, 4 e 6 estamos acessando os campos de um registro. Em 
linguagem C, um campo de uma variável ponteiro é acessado com uma 
flecha para a direta ‘->’, e não com um PONTO. Se usarmos PONTO neste 
caso, como por exemplo NovoElemento.esquerda, não irá funcionar. 
Exatamente; 
 
Questão 4/5 - Estrutura de Dados 
Na AULA 5 estudamos conceitos de grafos e suas 
representações matemáticas 
Acerca do grafo e suas representações matemáticas, 
assinale a alternativa INCORRETA. 
Nota: 0.0 
 A Na representação por lista de adjacências, temos um conjunto de listas 
encadeadas, onde cada lista conterá todos os vizinhos de um único 
vértice; 
 B Uma representação por matriz de incidências representa um grafo na 
forma de uma matriz, onde as linhas são os vértices e as colunas as 
arestas; 
 C Uma representação por matriz de adjacências representa um grafo na 
forma de uma matriz, onde as linhas e as colunas são os vértices; 
 D Uma representação por lista de adjacências representa um grafo na forma 
de um conjunto de listas encadeadas.; 
 E Na representação por lista de adjacências não podemos repetir um 
vértice em duas listas encadeadas distintas. 
Podemos repetir, pois cada lista conterá todos os 
vizinhos de cada vértice. 
 
Questão 5/5 - Estrutura de Dados 
Na AULA 5 estudamos conceitos de grafos. 
Acerca de grafos e seus aspectos construtivos, 
assinale a alternativa INCORRETA. 
Nota: 20.0 
 A Um laço ocorre quando uma aresta está conectada em um só vértice. 
 B Um grafo completo é aquele que contém uma, e somente, aresta para 
cada par distinto de vértices. 
 C Um grafo ponderado é aquele no qual todas suas arestas contém um 
peso. 
 D Um grafo trivial é aquele que apresente somente um vértice e uma 
aresta; 
Você acertou! 
Somente um vértice e nenhuma aresta. AULA 1 – 
TEMA 1. 
 E Encontramos arestas múltiplas em um grafo quando duas arestas 
conectam os mesmos vértices;

Continue navegando