Buscar

Avaliação On-Line 5 (AOL5) - Tópicos Integradores II (Ads)

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 9 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 9 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 9, do total de 9 páginas

Prévia do material em texto

Revisar envio do teste: Avaliação On-Line 5 (AOL 5) - Questionário
 
	
	
	Curso
	21720 . 7 - Tópicos Integradores II (Ads) - 20201.B
	Teste
	Avaliação On-Line 5 (AOL 5) - Questionário
	
	
	
	
	
	
	
	
	
	
	
	
	Resultados exibidos
	Todas as respostas, Respostas enviadas, Respostas corretas, Perguntas respondidas incorretamente
· Pergunta 1
1 em 1 pontos
	
	
	
	As tabelas hash podem ser desenvolvidas à mão, porém, no Java existe a chamada API Collection, que auxilia na aplicação desta estrutura sem necessariamente precisar criar do zero, através da interface SET<T> com a instanciação da classe HashSet<T> (). Embora esteja usando a interface SET, os comandos para inserir, editar, pesquisar e remover possuem, basicamente, a mesma sintaxe para quase todas as coleções.
Analise a situação a seguir:
import java.util.HashSet;
import java.util.Set;
public class Prj_Hash {
    public static void main(String args[])
    {
        Set<Integer> hasht=new HashSet<Integer>();
        hasht.add(100);
        System.out.println("remover:"+hasht.remove(100));
        System.out.println("contains:"+ hasht.contains(100));
    }
}
Assim, considerando as informações apresentadas e os conteúdos estudados, analise as operações a seguir e associe-as às suas respectivas características:
1) add
2) remove
3) contains
4) iterator
5) isEmpty
I. (  ) Remove elementos da estrutura
II. (  ) Retorna um objeto navegável através de um padrão de projeto
III. (  ) Retorna se contém elementos na estrutura ou não
IV. (  ) Busca elementos na estrutura
V. (  ) Insere elementos na estrutura
Agora, assinale a alternativa que apresenta a sequência correta:
	
	
	
	
		Resposta Selecionada:
	e. 
2, 4, 5, 3, 1.
	Respostas:
	a. 
5, 4, 2, 3, 1.
	
	b. 
2, 5, 4, 3, 1.
	
	c. 
2, 4, 5, 1, 3.
	
	d. 
1, 2, 4, 3, 5.
	
	e. 
2, 4, 5, 3, 1.
	
	
	
· Pergunta 2
1 em 1 pontos
	
	
	
	A pilha é uma estrutura de dados homogênea, que se comporta mais ou menos da mesma forma que uma pilha do mundo real, tendo seus dados organizados na estrutura LIFO (Last in First Out). Uma das aplicações das pilhas é no algoritmo de busca de grafos, no DFS que busca por profundidade, onde sua busca aplica-se em receber um vértice e retornar todos os caminhos atrelados a partir dele.
Analise a situação a seguir:
public void buscaDFS(Grafo_MA adj) {  /*Grafo_MA adj é matriz de adjacência*/
    this.resetar(adj);
    Stack<Vertice> pilha = new Stack<>();
    adj.getNo(0).setVisitado(true);
    pilha.add(adj.getNo(0));
    System.out.print(adj.getNo(0).getNome());
    while (!pilha.isEmpty()) {
        /*chamada da função getIDVizinhos com argumentos de matriz de adjacência e o índice do topo da pilha*/
        DECLARAÇÃO IDVIZINHO
        if (idVizinho == -1) {
             pilha.pop()
        ;} else {
        adj.getNo(idVizinho).setVisitado(true);
        pilha.push(adj.getNo(idVizinho));
        System.out.print("," + adj.getNo(idVizinho).getNome());
        }
    }
}
Com base nessas informações e no conteúdo estudado, o código que corresponde à declaração de idVizinho no DFS é:
	
	
	
	
		Resposta Selecionada:
	c. 
int idVizinho = this.getIDVizinhos (adj, pilha.peek ().getIndice ());
	Respostas:
	a. 
int idVizinho = this.getVertices (adj,pilha.peek ().getIndice ());
	
	b. 
int idVizinho = this.getVertices (pilha.peek ().getIndice (), pilha.peek ().getIndice ()); 
	
	c. 
int idVizinho = this.getIDVizinhos (adj, pilha.peek ().getIndice ());
	
	d. 
int Vizinho = this.getIDVizinhos (0, pilha.peek ().getIndice ());
	
	e. 
int idVizinho = this.getIDVizinhos (pilha.peek ().getIndice (),pilha.peek ().getIndice ());
	
	
	
· Pergunta 3
0 em 1 pontos
	
	
	
	A estrutura hash possui um dos melhores desempenhos dentro de uma grande estrutura de dados, pois sua notação de big O(1) é uma constante. Ou seja, para N dados, temos apenas um conjunto de instruções a se buscar. Porém, com a grande quantidade de dados, surge o problema da colisão, quando dados diferentes assumem o mesmo valor de hash. Existem formas de trabalhar o hashing para que isso não ocorra, porém, é preciso usar uma outra estrutura de dados para poder considerar um hash repetido de dados distintos. Uma das estruturas possíveis é a linkedlist, que faz a alocação do dado repetido ou aproximado dentro de um mesmo hash.
Com base nessas informações e no conteúdo estudado, podemos dizer que a técnica utilizada para a colisão é:
	
	
	
	
		Resposta Selecionada:
	a. 
o linear probing.
	Respostas:
	a. 
o linear probing.
	
	b. 
o load factor.
	
	c. 
o rerash.
	
	d. 
o new LinkedList.
	
	e. 
o encadeamento separado.
	
	
	
· Pergunta 4
1 em 1 pontos
	
	
	
	O grafo é uma estrutura que contempla vértices e arestas. Sua estrutura não possui topologia ou ordem específica de inserção, remoção ou edição, pois um dos objetivos primordiais dos grafos é modelar um problema do mundo real. Por esse motivo, diversos tipos de grafos acabam coexistindo, cada um com suas características particulares.
Analise a situação a seguir:
As escalas da higienização de trens de 5 estações têm sido um grande problema para uma empresa de prestação de serviços. Foi sugerido que seu sistema corporativo tivesse uma funcionalidade que gerasse essas escalas automaticamente, de acordo com as seguintes regras: deve ser em horários de menor movimento, todos os vagões de um trem devem estar a 4 estações de igual tempo de distância um do outro.
Com base nessas informações e no conteúdo estudado, uma das possibilidades de grafo para modelar esse case seria um:
	
	
	
	
		Resposta Selecionada:
	d. 
grafo orientado.
	Respostas:
	a. 
grafo ponderado não conectado.
	
	b. 
grafo ponderado.
	
	c. 
grafo ponderado não conectado.
	
	d. 
grafo orientado.
	
	e. 
grafo não conectado.
	
	
	
· Pergunta 5
1 em 1 pontos
	
	
	
	A busca por largura BFS (Breadth-First Search), é um algoritmo de busca em grafos que retorna os níveis dos vizinhos deste o primeiro até o último vértice. Primeiro, ele mostra os vizinhos do nó, depois os vizinhos dos vizinhos e assim até chegar no final. Este formato de busca é ideal para mostrar os níveis de um nó, pois, diferente do DFS, ele mostra todo o caminho de um vizinho até chegar no próximo. Esses dois principais algoritmos de busca como DFS e BFS precisam que a propriedade “visitado” dos nós ou vértices estejam false, pois isso significa que este nó não foi percorrido e, portanto, poderá ser contabilizado.
Analise a situação a seguir:
    public void resetar (Grafo_MA adj) {
        for (int i = 0; i < adj.size (); i++) {
                        ...       
}
}
A função resetar recebe uma matriz de adjacência e transforma em false a propriedade visitado de todos os vértices, através do comando adj.getNo (i), que visita o nó do índice i. Com base nessas informações e no conteúdo estudado, pode-se afirmar que a linha que corresponde à ação de setar como false no código acima é:
	
	
	
	
		Resposta Selecionada:
	c. 
adj.getNo(i).setVisitado(false); 
	Respostas:
	a. 
adj.getNo(i.getIndice()).setVisitado(false);
	
	b. 
adj.getNo(0).setVisitado(false);
	
	c. 
adj.getNo(i).setVisitado(false); 
	
	d. 
adj.getNo(i).setVisitado(true); 
	
	e. 
adj.getNo(new Vertice("A",i)).setVisitado(false);
	
	
	
· Pergunta 6
1 em 1 pontos
	
	
	
	As estruturas de dados homogêneas são estruturas que possuem indexação por profundidade, porém com apenas uma tipagem. No caso de matrizes e vetores, independentemente do tamanho “N” que possuam, eles sempre terão a mesma tipagem. Por isso, existem diversas aplicações para essas estruturas, sendo uma delas na forma computacional de manipular um grafo. Na classe grafo, temos os vértices e a matriz de adjacência, que deve ser populada para possuir as arestas. Porém, o grafo em si é iniciado ao executar o construtor, pois este define os tamanhos da matriz da classe.
Analise a situação a seguir:
class Grafo
{
 private Vertice nos [];
        private int matriz [] [];
        public Grafo (Vertice nosaux [])
        {
        ...
        }
}
Com base nessas informações e no conteúdoestudado, podemos dizer que a linha que corresponde ao comando do construtor do código acima é:
	
	
	
	
		Resposta Selecionada:
	a. 
nos = nosaux; matriz = new int [nosaux.length] [nosaux.length];
	Respostas:
	a. 
nos = nosaux; matriz = new int [nosaux.length] [nosaux.length];
	
	b. 
noaux = nos; matriz = new int [nos.length] [nos.length];
	
	c. 
nos = nosaux; matriz = new int [10] [10];
	
	d. 
nos = nos; matriz = new int [nos.length] [nos.length];
	
	e. 
nosaux = nosaux; matriz = new int [nosaux.length] [nosaux.length];
	
	
	
· Pergunta 7
1 em 1 pontos
	
	
	
	Existem muitas formas de navegação dentro de um grafo. Uma das mais comuns é a matriz de adjacência, uma matriz que possui o mesmo número de linhas e de colunas – ou seja, quadrada – e sua quantidade de elementos, tanto linhas quanto colunas, é o total de vértices do grafo. Nesse sentido, toda matriz de adjacência sempre será bidimensional. Essa é uma das principais formas de visualização de grafos dentro dos algoritmos, onde estes recebem a matriz e fazem o processamento pelas ligações dos vértices.
Analise a situação a seguir:
Com base nessas informações e no conteúdo estudado, dizemos que o grafo que corresponde a essa matriz é:
	
	
	
	
		Resposta Selecionada:
	a. 
F-X-G.
	Respostas:
	a. 
F-X-G.
	
	b. 
F-G-X.
	
	c. 
X-F-G.
	
	d. 
G-F-X.
	
	e. 
F-X e G isolado.
	
	
	
· Pergunta 8
1 em 1 pontos
	
	
	
	Uma das principais aplicações de grafos em um problema de logística é achar o menor caminho para várias entregas. No caso, cada ponto de entrega seria um vértice e cada rua, avenida ou caminho, seriam as arestas. Por ser um problema recorrente em grafos, existem diversos algoritmos para isso. Um deles se destaca por ser um dos mais simples para resolver este problema. Trata-se da árvore geradora mínima ou MST (Minimum Spanning Tree), que percorre os vizinhos até o fim e verifica se algum deles possui uma conectividade com os nós do grafo.
Com base nessas informações e no conteúdo estudado, podemos dizer que o algoritmo usado no MST como forma de criar uma árvore geradora mínima é:
	
	
	
	
		Resposta Selecionada:
	b. 
DFS ou busca por profundidade.
	Respostas:
	a. 
matriz de adjacência.
	
	b. 
DFS ou busca por profundidade.
	
	c. 
BFS ou busca por largura.
	
	d. 
lista de adjacência.
	
	e. 
matriz de incidência.
	
	
	
· Pergunta 9
1 em 1 pontos
	
	
	
	A função hash tem como objetivo tratar os dados como posição de memória. Sendo assim, um dado que não tenha comparações, possuirá apenas uma operação para busca em N dados. Essa função é muito utilizada em dicionários de palavras e outras coisas que precisam analisar muitos dados. Ao utilizar o hash na linguagem Java, cada variável ou objeto possuirá uma posição específica, pois essa numeração surge dos cálculos da JVM (Java Virtual Machine).
Com base nessas informações e no conteúdo estudado, podemos dizer que a função para pegar o valor hash de um Objeto Pilha com a tipagem Integer da classe Stack é:
	
	
	
	
		Resposta Selecionada:
	e. 
new Stack<Integer>().hashCode();
	Respostas:
	a. 
new Stack<Integer>.hashCode();
	
	b. 
new Stack<Integer>().toHash();
	
	c. 
new Stack<Integer>().toHashCode();
	
	d. 
new Stack().hashCode();
	
	e. 
new Stack<Integer>().hashCode();
	
	
	
· Pergunta 10
1 em 1 pontos
	
	
	
	A busca por profundidade no grafo é uma das principais que podem ser executadas. Ela necessita da matriz de adjacência para poder percorrer os vértices. A busca por profundidade é conhecida por percorrer até o último vizinho de um vértice por vez, ou seja, percorre todo o caminho até o final de um vizinho, vai para o próximo e segue até o fim.
Analise a situação a seguir:
Com base nessas informações e no conteúdo estudado, podemos dizer que o comando que retorna o resultado da busca DFS em A é:
	
	
	
	
		Resposta Selecionada:
	b. 
B-C-E 
	Respostas:
	a. 
B-D-E 
	
	b. 
B-C-E 
	
	c. 
E-C-D
	
	d. 
B-C-D 
	
	e. 
B-E-D

Continue navegando