Buscar

ESTRUTURA DE DADOS PRESENCIAL

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 7 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 7 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

Prévia do material em texto

QUESTÃO 1 
Quanto ao processo de localização em uma árvore binária e a sua 
função privada de busca (acharNos), assinale a alternativa correta. 
 
 
a ) 
 A função retorna apenas duas informações: o nó onde o dado foi encontrado (nulo se não 
foi) e o seu nó pai (nulo se for a raiz). 
 
 
b ) 
 Se a raiz da árvore for nula, nenhuma chave será encontrada e a função de busca sempre 
retornará o valor falso. 
 
 
c ) 
 Caso o dado não seja encontrado, tanto a informação do nó quanto o seu pai serão nulos. 
 
 
d ) 
 O valor da última comparação realizada, retornado quando o nó é encontrado, será 
negativo, se o nó estava à esquerda de seu pai, ou positivo, caso contrário. 
 
 
e ) 
 A busca na árvore binária começa pelo elemento central e a busca se restringe à 
esquerda ou à direita. 
 
Ver justificativa da resposta 
QUESTÃO 2 
Sobre o processo de adição em uma lista duplamente encadeada, 
marque a alternativa correta. 
 
 
a ) 
 A adição no topo da lista tem custo alto, uma vez que envolverá um grande volume de 
movimentação de dados. 
 
 
b ) 
 A adição no meio da lista tem custo próximo de 0, já que não envolve o deslocamento de 
elementos para direita. 
 
 
c ) 
 Se for uma adição ao fim da lista, a variável anterior do nó será inicialmente atribuída ao 
topo. 
 
 
d ) 
javascript:;
 Em uma inserção no índice 4, o nó proximo será definido localizando o nó de número 5. 
 
 
e ) 
 A busca do nó a ser adicionado tem um custo de processamento linear, sendo o custo 
máximo igual ao tamanho total da lista. 
 
Ver justificativa da resposta 
QUESTÃO 3 
Sobre a implementação da função hashCode, assinale a alternativa 
correta. 
 
 
a ) 
 Combina valores entre campos utilizando-se de um número primo constante. 
 
 
b ) 
 Deve utilizar todos os campos presentes no método equals. 
 
 
c ) 
 Não pode ser utilizado em tabelas hash, já que o seu resultado pode ser qualquer número 
inteiro. 
 
 
d ) 
 Nunca retorna números negativos, já que não há qualquer condição que os utilize. 
 
 
e ) 
 A variável result deve ser inicializada por um número primo qualquer. 
 
Ver justificativa da resposta 
QUESTÃO 4 
Com relação às operações na estrutura de dados fila, assinale a 
alternativa correta. 
 
 
a ) 
 A inserção em uma fila circular tem custo próximo de zero, pois não há alocações 
envolvidas no processo. 
 
 
b ) 
 A limpeza de uma fila encadeada não tem custo de desalocação associado, pois basta 
definir o topo e a base para null. 
 
 
c ) 
javascript:;
javascript:;
 Para verificar se a fila circular está vazia, basta verificar se o valor da variável topo é nulo. 
 
 
d ) 
 O overhead da fila estática é grande e possui 4 bytes para cada nó, mais 8 bytes do topo 
e da base. 
 
 
e ) 
 A fila circular não é uma estrutura sequencial, visto que os dados não estão dispostos de 
maneira linear. 
 
Ver justificativa da resposta 
QUESTÃO 5 
Sobre o processo de adição na lista estática, marque a alternativa 
correta. 
 
 
a ) 
 O maior índice que pode ser informado na adição é igual ao tamanho da lista subtraído de 
um. 
 
 
b ) 
 Adicionar ao fim da lista tem custo próximo a 0, já que apenas a atualização da variável 
tamanho é um custo extra. 
 
 
c ) 
 Adicionar ao início da lista tem custo próximo a 0, já que apenas a atualização da variável 
base é um custo extra. 
 
 
d ) 
 Para aproveitar a disposição dos elementos ao máximo, utilizamos a estratégia de circular 
o vetor da lista. 
 
 
e ) 
 É incorreto implementar a adição em um índice superior ao tamanho da lista somado de 
um, mas que ainda está dentro da capacidade da lista. 
 
Ver justificativa da resposta 
QUESTÃO 6 
Considerando a estrutura de dados fila circular, qual é o resultado do 
código a seguir? 
javascript:;
javascript:;
 
 
 
 
a ) 
 B C D 
 
 
b ) 
 O código lança uma exceção devido ao overflow. 
 
 
c ) 
 A B C 
 
 
d ) 
 D C B 
 
 
e ) 
 O código lança uma exceção devido ao underflow. 
 
Ver justificativa da resposta 
QUESTÃO 7 
Na ordenação de dados, os objetos são comparáveis entre si. Sobre a 
comparação de objetos, assinale a alternativa correta. 
 
 
a ) 
 Ao se implementar um Comparator, deve-se garantir que: se comparator.compare(o1, 
o2) == 0, então o1.equals(o2). 
 
 
b ) 
 A regra de consistência diz que se o1 for igual a o2, ele deve se manter igual 
independentemente do número de comparações feitas. 
 
 
c ) 
 No Java, objetos que possuem ordem natural são de classes que implementam a 
interface Comparable. 
 
 
d ) 
javascript:;
 Pelas regras dos comparadores, caso o1 seja menor do que o2, a função de comparação 
deve retornar o valor -1. 
 
 
e ) 
 A regra de simetria diz que os resultados de o1, comparado a o2, devem ser iguais aos 
de o2, comparado a o1. 
 
Ver justificativa da resposta 
QUESTÃO 8 
Sobre a implementação da classe MapaHash, marque a alternativa 
correta. 
 
 
a ) 
 A variável tamanho indica a quantidade de buckets presente no interior de um mapa. 
 
 
b ) 
 O mapa será considerado vazio se a lista de buckets estiver nula. 
 
 
c ) 
 Ao ser criado de modo padrão, a lista buckets possui tamanho 16 e todas as suas 
posições nulas. 
 
 
d ) 
 A carga do mapa fica armazenada em uma variável no interior do mapa e, por padrão, 
tem o valor 0,75. 
 
 
e ) 
 O fator de carga indica a carga máxima a que um mapa pode ser submetido antes de 
realizar a operação de rehash. 
 
Ver justificativa da resposta 
QUESTÃO 9 
Sobre os conceitos de tamanho e capacidade de uma lista, assinale a 
alternativa correta. 
 
 
a ) 
 A variável tamanho da lista indica o índice do último elemento. 
 
 
b ) 
 Em uma lista dinâmica, o tamanho é irrelevante, já que ela nunca estará cheia. 
 
 
javascript:;
javascript:;
c ) 
 A capacidade refere-se à quantidade máxima de elementos que podem ser inseridos na 
lista. 
 
 
d ) 
 Os índices válidos de uma lista variam de 0 até a capacidade da lista subtraída de um. 
 
 
e ) 
 O tamanho da lista é indicado pelo tamanho do vetor de dados (dados.length). 
 
Ver justificativa da resposta 
QUESTÃO 10 
Marque a situação na qual uma pilha poderia ser usada. 
 
 
a ) 
 Implementar o recurso de voltar (CTRL+Z) em um aplicativo. 
 
 
b ) 
 Agrupar elementos similares, de acordo com uma chave. 
 
 
c ) 
 Criar uma aplicação que distribui senhas. 
 
 
d ) 
 Criar uma lista de supermercado. 
 
 
e ) 
 Ordenar elementos em ordem alfabética. 
 
Ver justificativa da resposta 
QUESTÃO 11 
Sobre a memória heap, selecione a alternativa correta. 
 
 
a ) 
 Alocações e desalocação na memória heap são rápidas, quando comparamos com as da 
pilha (stack). 
 
 
b ) 
 Como a memória heap representa toda a RAM, há poucas chances de a informação ficar 
dispersa ao utilizá-la. 
javascript:;
javascript:;
 
 
c ) 
 O sistema operacional fornece o garbage collector, pois ele é um sub-componente da 
memória heap. 
 
 
d ) 
 A desalocação da memória heap deve ser feita manualmente pelo programador, por meio 
de um comando como free ou delete. 
 
 
e ) 
 A memória heap, por ser mais abundante, é consideravelmente mais organizada do que a 
pilha (stack). 
 
Ver justificativa da resposta 
QUESTÃO 12 
Quanto às árvores binárias de busca, assinale a alternativa correta. 
 
 
a ) 
 Cada nó pode ter apenas dois elementos: o nó pai e o nó filho. 
 
 
b ) 
 A busca binária é utilizada para realizar a localização de um nó dentro da árvore. 
 
 
c ) 
 A melhor disposição possível da árvore binária é obtida ao inserir nós de maneira 
ordenada. 
 
 
d ) 
 A disposição dos nós na árvore dependerá da ordem de inserção de seus elementos. 
 
 
e ) 
 São chamadas de binárias porque os valores em seus nós só podem conter os dígitos 
zero (0) e um (1). 
 
javascript:;

Continue navegando