Prévia do material em texto
QUESTÃO 1 Sobre a memória heap, selecione a alternativa correta. a ) A memória heap, por ser mais abundante, é consideravelmente mais organizada do que a pilha (stack). b ) Como a memória heap representa toda a RAM, há poucas chances de a informação ficar dispersa ao utilizá-la. c ) Alocações e desalocação na memória heap são rápidas, quando comparamos com as da pilha (stack). d ) O sistema operacional fornece o garbage collector, pois ele é um sub-componente da memória heap. e ) A desalocação da memória heap deve ser feita manualmente pelo programador, por meio de um comando como free ou delete. Ver justificativa da resposta javascript:; QUESTÃO 2 Sobre o processo de iteração nos mapas, assinale a alternativa correta. a ) Apenas o iterador de pares precisa ser integralmente implementado, o resto pode ser simplesmente adaptado a partir dele. b ) Após a primeira chamada do next, utilizaremos o iterador do bucket de índice 0 para retornar os primeiros elementos do mapa. c ) Caso o método remove elimine o último bucket de uma lista, precisaremos fazer uma busca reversa por outra lista cheia. d ) O método padrão forEach não precisa ser implementado no mapa, já que este implementa a interface Iterable. e ) Os métodos chaves, valores e entradas retornam objetos do tipo Iterator, permitindo diferentes formas de iteração ao serem chamados. Ver justificativa da resposta javascript:; QUESTÃO 3 Sobre as áreas de memória de um processo, assinale a alternativa correta. a ) São áreas de memória de um processo: pilha, heap e garbage collector. b ) A pilha é uma área de memória organizada, na qual criações e remoções de variáveis locais ocorrem rapidamente. c ) As variáveis locais são automaticamente destruídas, pois são colocadas no heap. d ) O heap é uma área de memória organizada, em que alocações e desalocações ocorrem rapidamente. e ) Uma das vantagens da pilha é que ela representa toda área de memória disponível no sistema. Ver justificativa da resposta javascript:; QUESTÃO 4 Sobre a estrutura árvore, assinale a alternativa correta. a ) Cada nó em uma árvore pode conter um conjunto de filhos, sendo que cada nó filho deve conter mais de um pai. b ) O sistema de pastas de um computador não é uma árvore, pois está organizado em pastas e arquivos em vez de nós. c ) Uma estrutura de árvore possível, mas menos otimizada, conterá nós cíclicos, ou seja, apontando para qualquer um de seus pais. d ) É utilizada para o armazenamento de dados de maneira hierárquica, em que um elemento possui elementos subordinados. e ) Nós que não possuem filhos são chamados de nós raiz. Um exemplo desse tipo de nó é o nó inicial da árvore. Ver justificativa da resposta javascript:; QUESTÃO 5 Quanto ao algoritmo de busca por seleção (selection sort), marque a alternativa correta. a ) b ) O algoritmo se beneficia do fato de que trocas geralmente têm um custo mais alto do que comparações, sendo, em geral, mais indicado que o bubble sort. c ) Por trocar apenas o menor elemento a cada iteração, é incorreto afirmar que esse algoritmo utiliza a estratégia de força bruta. d ) Na lista encadeada, é melhor que se troque os dados do que os nós, pois os nós implicarão na atualização de vários elementos (anterior, próximo etc.). e ) O algoritmo de selection sort é inviável para a lista encadeada, pois nesta estrutura sua implementação se torna demasiado complexa. Ver justificativa da resposta javascript:; QUESTÃO 6 Sobre o bubble sort (algoritmo da bolha), selecione a alternativa correta. a ) Por ter uma implementação simples, ele se torna um algoritmo bastante viável para a maioria das aplicações práticas. b ) Nesse algoritmo, o número de comparações e trocas é praticamente igual e elevado, o que o torna praticamente inviável na prática. c ) Tem um número de trocas igual ao número de comparações; portanto, é mais vantajoso quando o tamanho dos dados é grande. d ) . e ) Esse algoritmo é diferente do quick sort, pois o bubble sort utiliza a estratégia de dividir para conquistar, em vez de força bruta. Ver justificativa da resposta javascript:; QUESTÃO 7 Sobre a remoção de elementos da lista estática, assinale a alternativa correta. a ) Para remover os elementos, devemos movimentar os dados para a esquerda, iniciando pelo posterior ao que está sendo removido. b ) A remoção do primeiro elemento da lista tem custo próximo de 0, já que praticamente não provoca movimentações. c ) Para limpar a lista, devemos definir o seu tamanho para 0 e percorrer a lista marcando como nulo todos os elementos do índice 0 até a capacidade da lista. d ) Caso o dado a ser removido já seja nulo, não é necessário deslocar elementos da lista. e ) O processo de remoção deve começar marcando o elemento a ser removido como nulo, garantindo que ele seja coletado pelo garbage collector. Ver justificativa da resposta javascript:; QUESTÃO 8 Sobre a estrutura mapa, é correto afirmar que: a ) as chaves do mapa identificam um objeto associado a elas e, portanto, não podem conter repetição. b ) a interface Mapa é filha de Colecao, compartilhando vários métodos com outras coleções, como o método limpar. c ) em um mapa hash, as classes das chaves e valores do mapa precisam implementar os métodos equals e hashcode. d ) caso o método adicionar retorne nulo, saberemos que não havia uma chave associada àquele mapa previamente. e ) a chave do mapa é também chamada de entrada, uma vez que é obrigada a implementar alguns métodos para funcionar. Ver justificativa da resposta javascript:;