Baixe o app para aproveitar ainda mais
Prévia do material em texto
Impresso por Kenny Ralph, CPF 043.378.939-54 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não pode ser reproduzido ou repassado para terceiros. 25/05/2021 20:33:46 • Pergunta 1 0 em 1 pontos Uma lista encadeada é uma sequência de elementos organizados um após o outro, com cada elemento conectado ao próximo elemento por um link. Uma prática comum de programação é colocar cada elemento junto com o link para o próximo elemento, resultando em um componente denominado nó. Considerando essas informações e o conteúdo estudado sobre listas encadeadas, analise as afirmativas a seguir e assinale V para a(s) verdadeira(s) e F para a(s) falsa(s). I. Ao usar uma lista, aloca-se espaço no início e esse espaço permanece fixo; se for alocado muito e o espaço permanecer sem uso, há desperdício recursos. II. A desvantagem de usar uma lista encadeada no lugar de uma matriz é que a lista encadeada pode crescer dinamicamente. III. Em uma lista encadeada, o espaço alocado em memória é fixo, o que a torna uma estrutura flexível, à medida que você adiciona ou remove dados da memória. IV. Usando uma linguagem orientada a objetos, como Java, pode-se modelar a lista encadeada, usando instâncias de nós separadas, conectadas para construir uma lista encadeada. Agora, assinale a alternativa que apresenta a sequência correta: ~Sua resposta está correta. Conforme apresentado no conteúdo, ao usar uma lista encadeada ao invés de um array, o espaço em memória é alocado dinamicamente, à medida que novos dados são incluídos ou excluídos da estrutura de dados. Resposta Selecionada: V, V, V, F. Resposta Correta: V, F, F, V. Comentário da resposta: Sua resposta está incorreta. Conforme apresentado no conteúdo, as listas encadeadas são estruturas de dados lineares. Ao contrário dos arrays, os elementos das listas encadeadas não são armazenados em localização contínua, mas vinculados por meio de ponteiros. A principal vantagem da lista encadeada sobre as matrizes é que seu crescimento dinâmico torna o espaço alocado Impresso por Kenny Ralph, CPF 043.378.939-54 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não pode ser reproduzido ou repassado para terceiros. 25/05/2021 20:33:46 em memória dinâmica, de forma a utilizar somente o espaço necessário. • Pergunta 2 0 em 1 pontos Existem dois tipos de exceções que, normalmente, surgem de erros de programação com matrizes: um deles é tentar usar uma variável de array antes que ele seja alocado, e o outro é tentar acessar uma matriz fora de seus limites. Considerando essas informações e o conteúdo estudado sobre arrays, pode-se afirmar que, para o último caso descrito no elemento-base, o tipo de erro apresentado é: Resposta Selecionada: NulPointerException Resposta Correta: ArrayIndexOutOfBoundException Comentário da resposta: Sua resposta está incorreta. Conforme apresentado no conteúdo, geralmente, uma matriz é de tamanho fixo e cada elemento é acessado usando os índices. Sempre que você usa um valor maior ou igual ao tamanho da matriz, um erro é lançado. • Pergunta 3 0 em 1 pontos Na lista duplamente encadeada, cada nó possui um ponteiro para o nó predecessor outro para o nó sucessor, podendo ou não ter um nó cabeça. Para tanto, é necessár declarar duas variáveis para conter os valores desses nós. Analise o código a seguir: public class { private anterior; private proximo; private No No No String valor; public void setValor(String valor) { this.valor = valor; } public String getValor() { return valor; } public void setAnterior(No anterior) { this.anterior = anterior; } public getAnterior() {No return anterior; } public void setProximo(No proximo) { this.proximo = proximo; } public getProximo() { return proximo; } No } Considerando essas informações e o código apresentado, analise as afirmativas a se I. Na classe No, são declaradas duas variáveis de acesso irrestrito do tipo No, para manipular o nó predecessor e sucessor da lista encadeada. II. Na classe No, as seguintes ações são realizadas: definição da classe, definição dos valores dos nós e definição dos retornos dos nós. Impresso por Kenny Ralph, CPF 043.378.939-54 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não pode ser reproduzido ou repassado para terceiros. 25/05/2021 20:33:46 III. Na classe No, são declaradas duas variáveis do tipo No para manipular o nó predecessor e sucessor da lista encadeada. IV. A classe Lista permite percorrer os nós da lista, atribuindo valores a cada nó. Resposta Selecionada: F, F, V, V. Resposta Correta: F, V, V, F. QUESTÃO 12 Listas circulares 2.3 Listas circulares Tipo questão: Afirmação incompletade Nível dificuldade questão: Fácilde da Comentário da resposta: Sua resposta está incorreta. Conforme apresentado no conteúdo, o algoritmo de implementação de uma lista duplamente encadeada req a existência de duas variáveis responsáveis pela navegação entre os elementos da lista. Nas listas duplamente encadeadas, cada element tem um ponteiro para o próximo elemento e um ponteiro para o elemento anterior. Desta forma, dado um elemento, podemos acessa ambos os elementos adjacentes: o próximo e o anterior. • Pergunta 4 0 em 1 pontos Listas encadeadas são estruturas de dados lineares e dinâmicas. A grande vantagem elas possuem em relação ao uso de vetor é o fato de terem tamanho máximo relativamente infinito (o tamanho máximo é o da memória do computador), ao mesm tempo em que podem ter o tamanho mínimo de 1 elemento, evitando o desperdício memória. Considerando essas informações e o conteúdo estudado sobre a implementação de analise as afirmativas a seguir. I. As listas duplamente encadeadas se diferenciam das listas simplesmente encadead pelo fato de, na primeira, os nós da lista formarem um anel com o último elemento l ao primeiro da lista. II. Na implementação das listas com encadeamento simples, os elementos da lista possuem informações de seu predecessor. III. Ao implementar listas com encadeamento duplo, cada elemento possui duas informações: a informação de quem é seu sucessor e predecessor. IV. Em algumas implementações, uma lista vazia pode ter um único nó, chamado de sentinela, nó cabeça ou header. Impresso por Kenny Ralph, CPF 043.378.939-54 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não pode ser reproduzido ou repassado para terceiros. 25/05/2021 20:33:46 Agora, assinale a alternativa que apresenta a sequência correta: Resposta Selecionada: V, V, F, V. QUESTÃO 9 Listas encadeadas 2.2 Estruturas dinâmicas dadosde Tipo questão: Afirmação incompletade Nível dificuldade questão: Fácilde da Resposta Correta: F, F, V, V. Comentário da resposta: Sua resposta está incorreta. Conforme apresentado no conteúdo, list ligada ou lista encadeada é uma estrutura de dados linear e dinâmica composta por uma sequência de células que contém seus dados e também uma ou duas referências que apontam para o anterior ou posterior. Há diversos modelos de lista ligadas, tais como lista simplesmente encadeada, listas duplamente encadeadas e listas encadeadas circulares. As listas simplesmente encadeadas possuem informações somente de seus elementos sucessores, o que dificulta implementação e impacta sua performance em relação às listas duplamente encadeadas. Nenhuma delas tem seus nós em formato d anel, pois isto caracteriza listas circulares. • Pergunta 5 0 em 1 pontos Uma lista encadeada pode ser considerada uma estrutura de dados linear, em que cada elemento é considerado um objeto ou entidade separada em si mesmo. Cada elemento de uma lista consiste em dois itens os dadose a referência ao próximo nó. – Considerando essas informações e o conteúdo estudado sobre, pode-se afirmar que a estrutura que tem o valor null somente no seu último nó é a: Resposta Selecionada: Lista duplamente encadeada. Resposta Correta: Lista simplesmente encadeada. Comentário da resposta: Sua resposta está incorreta. Conforme apresentado no conteúdo, as listas circulares não têm um último elemento e, na lista duplamente encadeada, o ponteiro Impresso por Kenny Ralph, CPF 043.378.939-54 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não pode ser reproduzido ou repassado para terceiros. 25/05/2021 20:33:46 anterior ao primeiro elemento deve apontar para NULL (o início da lista); o ponteiro seguinte ao último elemento deve apontar para NULL (o fim da lista). • Pergunta 6 1 em 1 pontos Na estrutura dinâmica de dados, o tamanho da estrutura não é fixo e pode ser modificado durante as operações realizadas nela, sendo projetadas para facilitar a mudança das estruturas de dados, apresentando alocação de memória dinâmica em tempo de execução. Considerando essas informações e o conteúdo estudado sobre as estruturas de dados dinâmicas, analise as afirmativas a seguir. I. A alocação de memória dinâmica pode combinar blocos estruturados alocados separadamente, para formar estruturas compostas que se expandem e contraem conforme necessário. II. Um array dinâmico se expande conforme você adiciona mais elementos. Portanto, você não precisa determinar o tamanho com antecedência. III. Os arrays dinâmicos colocam itens próximos uns dos outros na memória, o que reduz a eficiência de processamento. IV. Adicionar ou remover itens dentro de arrays dinâmicos são procedimentos que levam tempo, pois seus elementos são armazenados de forma adjacente uns aos outros. Resposta Selecionada: V, V, F, V. Resposta Correta: V, V, F, V. Comentário da resposta: Sua resposta está correta. Conforme apresentado no conteúdo, a vantagem de se utilizar estruturas dinâmicas está na sua flexibilidade de alocação de novos elementos em tempo de execução, e esses elementos são posicionados na sequência do último elemento em memória, fazendo com que seja mais eficiente do que estruturas estáticas. • Pergunta 7 1 em 1 pontos Para percorrer seus elementos, são visitados todos os elementos a partir do ponteiro do elemento inicial, até que sejam alcançados novamente esse mesmo elemento, sendo construído com encadeamento duplo. Impresso por Kenny Ralph, CPF 043.378.939-54 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não pode ser reproduzido ou repassado para terceiros. 25/05/2021 20:33:46 Desta forma, o que seria o último elemento da lista passa a ter como próximo o primeiro elemento, que, por sua vez, passa a ter o último como anterior. Considerando essas informações e o conteúdo estudado sobre listas encadeadas, pode-se afirmar que a afirmação se refere a que tipo de estrutura de dados? ~Sua resposta está correta. Conforme apresentado no conteúdo, as listas circulares têm propriedades de lista dupla e simplesmente encadeada, com uma característica adicional para o deslocamento na lista, pois este tipo de lista não tem um ponto final. Resposta Selecionada: Listas circulares. Resposta Correta: Listas circulares. • Pergunta 8 1 em 1 pontos Existem muitas especificidades pertinentes a linguagem Java que podem induzir o desenvolvedor a cometer erros sutis. Um exemplo clássico é declaração de múltiplas variáveis de array em uma única declaração é um exemplo. Agora analise as afirmativas a seguir e assinale V para a(s) verdadeira(s) e F para a(s) falsa(s). I. ( ) Na declaração array: int[ ] a, b, c, todas as variáveis estão declaradas como variáveis do tipo arrays de inteiro. II. ( ) Na declaração array: int[ ] a, b, c, a variável a está declarada como um array de inteiros e as demais variáveis b e c, são declaradas como tipos básicos inteiros. III. ( ) Na a declaração int a[ ], b, c a variável a é uma variável do tipo array e as demais são do tipo int. IV. ( ) Uma forma simplificada de declaração variável de arrays é utilizar a classe Arraylist e declarar as variáveis desejadas de forma sequencial. Resposta Selecionada: V, F, V, F. Resposta Correta: V, F, V, F. Impresso por Kenny Ralph, CPF 043.378.939-54 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não pode ser reproduzido ou repassado para terceiros. 25/05/2021 20:33:46 Comentário da resposta: Sua resposta está correta. Este tipo de exercício serve para testar a atenção do desenvolvedor quanto às declarações de múltiplas variáveis. Para o exemplo apresentado, int[ ] a, b, c, caso a, b e c devam ser declarados como variáveis de array, então essa declaração está correta colocar os colchetes logo — depois do tipo indicaria que todos os identificadores na declaração são variáveis de array. Caso se deseje somente declarar a como um array inteiro e b e c como inteiros, a declaração int a[ ], b, c atenderia à necessidade. Este é o tipo de declaração que pode induzir o desenvolvedor ao erro. • Pergunta 9 0 em 1 pontos Uma lista encadeada (= linked list = lista ligada) é uma sequência de células; cada célula contém um objeto (todos os objetos são do mesmo tipo) e o endereço da célula seguinte. Analise o código a seguir: public Lista(){ this.inicio = this.fim = null; public boolean isVazia() { return this.inicio } == null; } public int getQuantidade() { No<T> atual = this.inicio; int qtde = while (atual 0; != null){ ++qtde; atual = atual.getProximo(); } return qtde; } Considerando essas informações e o conteúdo estudado, identifique quais as operações foram apresentadas no código. I. Construção da lista, verificação de lista vazia, leitura da quantidade de elementos. II. Construção da lista e verificação de lista vazia. III. Retorno da quantidade de elementos. IV. Declaração, adição e retorno da quantidade de elementos. Está correto apenas o que se afirma em: Resposta Selecionada: II e IV. Resposta Correta: II e III. Comentário da resposta: Sua resposta está incorreta. As listas encadeadas são recursos extremamente importantes no desenvolvimento de aplicações em qualquer linguagem. Elas são usadas como uma espécie de “vetor” Impresso por Kenny Ralph, CPF 043.378.939-54 para uso pessoal e privado. Este material pode ser protegido por direitos autorais e não pode ser reproduzido ou repassado para terceiros. 25/05/2021 20:33:46 dinâmico, em que os elementos são ligados uns aos outros, formando uma sequência. Existem várias formas de implementá-la e várias operações que podem ser realizadas. • Pergunta 10 1 em 1 pontos Uma estrutura de dados (ED), em ciência da computação, é uma coleção tanto de valores (e seus relacionamentos) quanto de operações (sobre os valores e estruturas decorrentes). É uma implementação concreta de um tipo abstrato de dado (TAD) ou um tipo de dado (TD) básico ou primitivo. Considerando essas informações e o conteúdo estudado sobre a classificação das estruturas de dados, podemos classificar as estruturas de dados complexas de acordo com as seguintes opções: I. Lineares e não lineares. II. Homogêneas e não homogêneas. III. Estáticas e dinâmicas. IV. Primitivas e não primitivas. Está correto apenas o que se afirma em: ~Sua resposta está correta. Conforme apresentado no conteúdo, estamos falando de estruturas complexas, que podem ser classificadas em: lineares, não lineares, homogêneas e não homogêneas, estáticas e dinâmicas. Resposta Selecionada: I, II e III. Resposta Correta: I, II e III. Terça-feira, 25 de Maio de 2021 09h32min26s BRT
Compartilhar