Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Usuário DHONATAS WENDREY DOS REIS 
Curso CCO02030 ESTRUTURA DE DADOS PNA (ON) - 201920.2073.01 
Teste ATIVIDADE 4 
Iniciado 09/09/19 14:01 
Enviado 24/09/19 12:17 
Status Completada 
Resultado da tentativa 2,5 em 2,5 pontos 
Tempo decorrido 358 horas, 15 minutos 
Resultados exibidos Respostas enviadas, Respostas corretas, Comentários 
• Pergunta 1 
0,25 em 0,25 pontos 
 
A declaração de uma classe para armazenar a informação de um nó na 
árvore foi realizada na classe “Produto”, conforme vemos na figura na 
sequência. 
 
Fonte: Elaborada pela autora, 2019. 
As informações, nesse caso, são o nome do produto e um código numérico. 
A partir dessa definição, dentro da classe “NoProduto”, foi declarado um 
objeto que contém as informações e outras duas referências para outros 
elementos: para as subárvores da esquerda e da direita. 
Sendo assim, assinale a alternativa que contém a linha de código para 
declarar um nó de uma árvore de produtos de um uma loja de 
departamentos. 
 
Resposta Selecionada: 
.NoProduto noProd = new NoProduto();. 
Resposta Correta: 
.NoProduto noProd = new NoProduto();. 
Feedback 
da resposta: 
Isso mesmo, sua resposta está correta! Foi solicitada a criação 
de um objeto do tipo “NoProduto”. Assim, nesse caso, o tipo 
“NoProduto” deve ser utilizado dos dois lados da igualdade. 
Temos, então, “NoProduto noProd = new NoProduto();”. 
 
 
• Pergunta 2 
0,25 em 0,25 pontos 
 
Um tipo abstrato de dados, por definição, deve ter uma forma de armazenar 
a informação e um conjunto de operações que podem ser aplicadas sobre 
os dados armazenados. Na linguagem Java, um método fica declarado 
dentro da classe que define o tipo do objeto. Para se definir um método, 
deve ser informado um modificador de acesso, um tipo de retorno, o nome 
do método e o conjunto de parâmetros. 
Assim, considerando essas informações e nossos estudos, assinale a 
alternativa a seguir com a declaração de um método público na linguagem 
Java, o qual recebe um objeto do tipo “Pergunta” e retorna um vetor 
de strings corresponde às opções de resposta. 
 
Resposta Selecionada: 
.public String[] metodo(Pergunta p){}. 
Resposta Correta: 
 
.public String[] metodo(Pergunta p){}. 
Feedback 
da resposta: 
Sua resposta está correta, parabéns! Um método público indica 
sua definição com a palavra-chave “ public”, seguida do tipo de 
retorno, o nome do método e a lista de parâmetros. Além disso, 
entre abre e fecha parênteses, devem ser definidos os 
parâmetros. 
 
• Pergunta 3 
0,25 em 0,25 pontos 
 
A árvore é um tipo abstrato de dados em que cada um dos elementos que detém a 
informação armazenada é denominado “nó”. Os nós são ligados entre si por meio de 
arestas. Quando isto ocorre, dizemos que o nó possui filhos e estes, por sua vez, podem ter 
outros filhos ou não. Quando o nó não tem nós filhos, ele é denominado “nó folha”. Além 
disso, dependendo do escopo do sistema, temos que criar um tipo específico para 
armazenar determinada informação. 
Assim, com base em nossos estudos, qual é a palavra-chave que deve ser utilizada para 
iniciar um tipo abstrato de dados que corresponde a um nó da árvore na linguagem Java? 
 
Resposta Selecionada: 
. Class. 
Resposta Correta: 
.Class. 
Feedback 
da 
resposta: 
Isso mesmo, sua resposta está correta! Em um nó de uma 
árvore, além da informação a ser armazenada, são declaradas 
as referências para os nós filhos por meio de atributos. Para 
definir esse conjunto de informações em um único elemento, 
deve-se criar uma classe Java. Para isso, precisamos iniciar sua 
definição com a palavra-chave “ class”, seguida do nome da 
classe. 
 
 
• Pergunta 4 
0,25 em 0,25 pontos 
 
Um método de busca que pode ser aplicado em uma árvore binária de 
busca é denominado pós-ordem. Este algoritmo pode ser enunciado a partir 
de três passos: percorrer a subárvore da esquerda em pós-ordem, percorrer 
a subárvore da direita em pós-ordem e visitar o nó raiz. 
Considere, então, a seguinte árvore binária de busca construída com 
valores numéricos. 
 
Fonte: Elaborada pela autora, 2019. 
De acordo com a definição anterior, com base na figura retratada, qual é a 
sequência dos nós visitados em pós-ordem? 
 
Resposta Selecionada: 
.1, 4, 2, 6, 9, 8, 5. 
Resposta Correta: 
.1, 4, 2, 6, 9, 8, 5. 
Feedback 
da 
resposta: 
Resposta correta, parabéns! No percurso em pós-ordem, 
inicialmente, visitamos o nó da esquerda, que é uma subárvore 
com raiz (2). Como o algoritmo é recursivo, visitamos primeiro o 
 
nó mais à esquerda (1). Depois disso, o nó da direita é visitado 
(4) e, por fim, a raiz da subárvore da esquerda (2). Após visitar a 
subárvore da esquerda, vamos para a subárvore da direita. 
Primeiro é visitado o elemento mais à esquerda dessa subárvore 
(6), depois o elemento à direita (9) e, por último, a raiz da 
subárvore da direita (8). Somente ao final é visitada a raiz (5) da 
árvore. 
 
• Pergunta 5 
0,25 em 0,25 pontos 
 
Uma operação muito comum nos sistemas computacionais é a operação de 
consulta ou busca. Ela, geralmente, recebe como parâmetro o elemento que 
se deseja procurar e um elemento de partida a partir do qual devemos 
buscar o elemento. Pensando nessa funcionalidade, consideremos a 
definição das classes “Produto” e “NoProduto” a seguir. 
 
Fonte: Elaborada pela autora, 2019. 
Foi implementado um método de busca por um elemento a partir do valor do 
atributo de “nome” do “Produto”. Os parâmetros recebidos são o nó visitado 
(“noProd”) e o nó com os dados procurados (“noProcurado”). Observe o 
próximo código. 
 
Fonte: Elaborada pela autora, 2019. 
A respeito desse código, assinale a alternativa verdadeira sobre o método 
“buscar()”, apresentado anteriormente. 
 
Resposta 
Selecionada: 
 
.O conteúdo do atributo “nome” não está sendo 
comparado corretamente. 
Resposta Correta: 
.O conteúdo do atributo “nome” não está sendo 
comparado corretamente. 
Feedback 
da 
resposta: 
Isso mesmo, sua resposta está correta! Os atributos do 
tipo string devem ser comparados com o uso dos métodos 
“equals” ou “equalsIgnoreCase”. O uso do operador “==” serve, 
no caso, para comparar as referências para os objetos, não o 
conteúdo das strings. 
 
 
• Pergunta 6 
0,25 em 0,25 pontos 
 
Ao inserir um nó em uma árvore binária de busca, é necessário que a 
característica fundamental do tipo de estrutura seja preservada. Assim, para 
qualquer subárvore que for considerado o nó filho da esquerda, este deve 
ter um valor menor que o da raiz. De forma similar, o nó filho da direita tem 
que ter um valor acima. 
A árvore de valores numéricos a seguir foi construída para que seja uma 
árvore binária de busca. Observe-a com atenção. 
 
 
Fonte: Elaborada pela autora, 2019. 
Agora, assinale a alternativa que contém os valores numéricos para X e Y, 
mantendo a árvore representada como uma árvore binária de busca. 
Resposta Selecionada: 
.X = 3 e Y = 14. 
Resposta Correta: 
.X = 3 e Y = 14. 
Feedback 
da resposta: 
Isso mesmo, resposta correta! Como o nó X está à esquerda do 
nó 6, é necessário que X seja menor que 6, então, o valor 3 
atende. De forma similar, já que Y está à direita de 12, seu 
valor deve ser maior que isso. Assim, o valor de Y igual a 14 é 
válido. 
 
 
• Pergunta 7 
0,25 em 0,25 pontos 
 
Em estruturas de dados, de forma geral, tão importante quanto o 
armazenamento dos dados, é necessário definir um conjunto mínimo de 
métodos que operam sobre eles. No caso de uma árvore binária, um 
método utilitário muito comum é aquele que verifica se a árvore está vazia. 
Veja com atenção a definição do método “ehVazia” a seguir, que recebe 
como parâmetro o nó raiz da árvore. 
 
Fonte: Elaboradapela autora, 2019. 
Considerando a implementação anterior, assinale a alternativa que relata 
corretamente o que acontece com o programa se for removido o comando 
“return true;”. 
 
Resposta Selecionada: 
.O programa não compilará. 
Resposta Correta: 
.O programa não compilará. 
Feedback 
da 
resposta: 
Muito bem, sua resposta está correta! O método “ehVazia” tem 
sempre que retornar um valor booleano para todos os possíveis 
fluxos de execução do programa. Como há uma cláusula if, é 
necessário indicar um retorno booleano se o programa não 
entrar nas condições exigidas. Assim, se for retirado comando 
“return true”, o programa não compilará. 
 
 
• Pergunta 8 
0,25 em 0,25 pontos 
 
Para a definição de um nó em uma árvore, precisamos, inicialmente, 
encapsular a informação armazenada em um novo tipo de dado, ou seja, em 
uma nova classe Java. Isto é possível por meio da declaração dos atributos 
na classe, que nada mais são do que variáveis presentes em todos os 
objetos de determinado tipo. 
Os atributos são variáveis, posições na memória do computador que podem 
armazenar dados, formadas por quatro elementos: nome, tipo, tamanho e 
valor. Na linguagem Java, é possível, ainda, definir um modificador de 
visibilidade se a variável for um atributo da classe, sendo os valores 
 
permitidos public, private, protected 
ou default. 
A figura a seguir, por exemplo, traz a declaração de uma classe “Pergunta”, 
com três atributos: texto da pergunta, alternativas e dicas sobre como 
responder. Observe. 
 
Fonte: Elaborada pela autora, 2019. 
Sendo assim, assinale a alternativa a seguir que contém a inicialização 
correta do atributo “opcoesResposta” com cinco opções em um objeto do 
tipo “Pergunta” na linguagem Java. 
Resposta Selecionada: 
.String[] opcoesPergunta = {“A”, “B”, “C”, “D”, “E”};. 
Resposta Correta: 
.String[] opcoesPergunta = {“A”, “B”, “C”, “D”, “E”};. 
Feedback 
da 
resposta: 
Muito bem, sua resposta está correta! Um vetor de elementos do 
tipo string pode ser inicializado informando o tipo string dos dois 
lados da igualdade e indicando o número de elementos no lado 
direito da igualdade, ou pode ser inicializado com os valores 
diretamente do lado direito. No caso em questão, temos que 
“String[] opcoesPergunta = {“A”, “B”, “C”, “D”, “E”};”. 
 
 
• Pergunta 9 
0,25 em 0,25 pontos 
 
O processo de inserção de um nó em uma árvore binária de busca viabiliza 
que o processo de busca por um elemento tenha melhor performance 
que uma busca sequencial, se os dados forem dispostos em uma estrutura 
mais simples, como um vetor. Por performance, podemos entender como o 
tempo para se encontrar o elemento e o número de comparações que 
precisam ser feitas, a fim de se achar o item procurado. 
Com base nessas informações e em nossos estudos sobre o assunto, 
analise os esquemas de árvores apresentados a seguir. 
I. 
II. 
III. 
IV. 
Agora, assinale a alternativa que contém apenas as representações com 
árvores binárias de busca. 
 
Resposta Selecionada: 
.I e IV, apenas. 
Resposta Correta: 
.I e IV, apenas. 
Feedback 
da 
resposta: 
Isso mesmo, resposta correta! As árvores binárias de busca 
devem seguir a regra que o nó filho da esquerda deve sempre 
 
ser menor que o nó raiz; enquanto o nó raiz deve ser menor que 
o nó filho da direita. Tal regra precisa ser aceita em todas as 
subárvores da esquerda e da direita. 
 
• Pergunta 10 
0,25 em 0,25 pontos 
 
Uma estrutura de dados do tipo árvore é formada por uma série de 
elementos ou nós que são ligados entre si por meio de arestas. O processo 
de construção de uma árvore começa pela definição do nó raiz e pela 
inserção dos nós filhos das subárvores da esquerda e da direita. Considere, 
por exemplo, o nó formado pelo nome das áreas da Ciência da 
Computação, que são derivadas da disciplina de Estrutura de Dados: 
Laboratório de Programação I e Análise de Algoritmos. 
 
Fonte: Elaborada pela autora, 2019. 
Agora, considere o trecho de código a seguir. Veja que ele representa a 
criação de uma árvore binária, cuja informação é armazenada em uma 
classe “NoDisciplina”, em um atributo do tipo string. 
 
Fonte: Elaborada pela autora, 2019. 
Sendo assim, assinale a alternativa a seguir que realiza a inserção dos 
filhos da esquerda e da direita, conforme apresentado no esquema da 
subárvore. 
 
Resposta Selecionada: 
. 
Resposta Correta: 
. 
Feedback 
da 
resposta: 
Muito bem, sua resposta está de acordo! Para os nós filhos da 
esquerda e da direita, o primeiro passo é criar o objeto do tipo 
“NoDisciplina”, preencher o nome da disciplina por meio da 
chamada do método “setInformacao” — já que os atributos são 
privados — e, por fim, adicionar a referência do nó filho ao nó 
raiz. 
 
 
Terça-feira, 24 de Setembro de 2019 12h17min03s BRT

Mais conteúdos dessa disciplina