Baixe o app para aproveitar ainda mais
Prévia do material em texto
Disc.: ESTRUTURA DE DADOS Aluno(a): ALBENIDES FERNANDES DE LIMA 201901298426 Acertos: 10,0 de 10,0 23/05/2021 Acerto: 1,0 / 1,0 Leia com atenção as afirmativas abaixo e assinale a resposta correta. I A estrutura de dados que melhor representa os diretórios ou pastas de arquivos do computador é a árvore. II A estrutura de dados FILA é não linear assim como o Grafo. III O termo folha em uma estrutura de dados é usado para um nó sem filhos e que tem grau 0, IV O grau de uma árvore é definido pelo número de subárvores de um nó. V O grafo é uma estrutura de dados que tem limitação para o número de vértices. VI Uma das aplicações da estrutura de dados grafo é a Computação Gráfica. I, II e V são afirmativas verdadeiras II, IV e V são afirmativas verdadeiras II, IV, V e VI são afirmativas verdadeiras I, II, III e VI são afirmativas verdadeiras I, III, IV e VI são afirmativas verdadeiras Respondido em 23/05/2021 12:19:00 Gabarito Comentado Acerto: 1,0 / 1,0 Considere as seguintes afirmativas : I) Os vetores em C++, quando passados como parâmetros de funções, são obrigatoriamente passados "por valor" e não "por referência". II) Variáveis globais são um recurso adequado para troca de informações entre funções distintas. III) Caso uma função necessite retornar mais de um valor ao programa que a chamou, deve fazê-lo usando parâmetros passados "por valor". As afirmativas corretas são: Apenas I e II Nenhuma está correta Apenas III Apenas II Apenas I Questão1 a Questão2 a https://simulado.estacio.br/alunos/inicio.asp javascript:voltar(); Respondido em 23/05/2021 12:20:49 Explicação: Analisando cada afirmativa ... I . Falso. Em C++ os vetores passados como parâmetros são sempre passados por referência. II. FAlso. Variáveis globais são uma péssima forma de usar recursos, comprometendo principalmente a manutenção do programa. III. FAlso. A função poderá retornar explicitamente um valor com return, mas terá que passar o outro parâmetro por referência e não por valor. Outra forma, será passar todos os parâmetros por referência. Portanto, não opção correta. Acerto: 1,0 / 1,0 Em C++, quando uma variável é declarada como uma struct, o acesso para atribuição e leitura dos membros (campos) deste registro se dá pelo operador : -> (seta). ∙ (ponto). , (vírgula). * (asterisco). & (e comercial ou eitza). Respondido em 23/05/2021 12:22:19 Explicação: Por definição, o operador que permite acessar os campos de uma variável struct é o ponto (.). Acerto: 1,0 / 1,0 Existem vários tipos de algoritmos para realizar a ordenação dos elementos, onde um algoritmo de ordenação deve rearranjar o vetor de forma a estabelecer uma ordem entre os elementos. Marque a alternativa correta que cita o algoritmo cuja descrição é: "considera cada elemento uma vez inserindo-o em seu lugar correto entre os elementos que já estão em ordem". E o seu passo a passo pode ser descrito como: "o elemento é inserido entre os ordenados movendo-se os elementos maiores que ele uma posição para a direita e posteriormente inserindo-o na posição vaga". Inserção Bolha Seleção QuickSort MergeSort Respondido em 23/05/2021 12:24:23 Gabarito Comentado Acerto: 1,0 / 1,0 Questão3 a Questão4 a Questão5 a As estruturas de dados são utilizadas para manter dados ou informações organizados na memória, o que possibilita a otimização do uso destes dados. Porém, as estruturas guardam características especiais na manipulação destes dados, assim deve-se escolher a estrutura certa ou mais adequada para uma determinada aplicação. Portanto marque a opção que representa a melhor estrutura, quando se tem como requisitos principais o acesso aleatório aos dados e alocação destes de forma contínua na memória. Lista Encadeada Fila Sequencial Pilha Sequencial Lista Sequencial Pilha Encadeada Respondido em 23/05/2021 12:27:53 Gabarito Comentado Acerto: 1,0 / 1,0 A estrutura de dados que segue a lógica LIFO (Last in First Out) é denominada : Pilha Vetor Lista duplamente encadeada Fila Árvore Respondido em 23/05/2021 12:29:46 Explicação: Por definição, pilha é uma estrutura de dados que segue a lógica LIFO, em que o último a entrar será o primeiro a sair. Acerto: 1,0 / 1,0 Uma fila duplamente terminada, isto é, uma estrutura linear que permite inserir e remover de ambos os extremos é chamada de: Shift-and. Boyer-Moore. Árvore. Deque. Autômato. Respondido em 23/05/2021 12:31:53 Explicação: Em ciência da computação, uma fila duplamente terminada (frequentemente abreviada como deque, do inglês double ended queue) é um tipo de dado abstrato que generaliza uma fila, para a qual os elementos podem ser adicionados ou removidos da frente (cabeça) ou de trás (cauda). Também é chamada de lista encadeada cabeça-cauda, apesar de propriamente isto se referir a uma implementação de estrutura de dados específica. As deques são filas duplamente ligadas, isto é, filas com algum tipo de prioridade. Por exemplo, sistemas distribuídos sempre necessitam que algum tipo de processamento seja mais rápido, por ser mais prioritário naquele momento, deixando outros tipos mais lentos ou em fila de espera, por não requerem tanta pressa. Ele pode ser entendido como uma extensão da estrutura de dados Fila. Questão6 a Questão7 a A implementação de um deque por alocação estática ou seqüencial é feita por meio de um arranjo de dimensão máxima predefinida e de duas variáveis inteiras que indicam o topo e a base (head e tail, respectivamente). Da mesma forma que ocorre com a fila, o deque deve ser implementado segundo a abordagem circular, que confere eficiência à estrutura ao mesmo tempo em que evita o desperdício de memória. Acerto: 1,0 / 1,0 As variáveis são na verdade trecho de memórias que armazenam dados de diversas naturezas, portanto sempre que declara-se uma variável, na linguagem C++, é necessário informar o tipo de dado que esta irá armazenar. Um tipo especial de variáveis são os ponteiros, isto é, variáveis que armazenam apenas os endereços de outras variáveis. Assim os ponteiros são usados para que se possa acessar de forma indireta uma outra variável. Sabendo-se disto e supondo que o endereço na memória da variável "a" é 100 e o endereço da memória da variável ponteiro é 200, analise o trecho de código abaixo e marque a alternativa que representa a saída do programa: 9 9 200 100 9 200 200 9 100 9 100 200 100 100 200 Respondido em 23/05/2021 12:40:32 Explicação: 100 ===> endereço da memória da variável a 9 ===> valor da variável a 200 ===> endereço da memória da variável ponteiro Acerto: 1,0 / 1,0 Tínhamos declarado um ponteiro de nome ptr e precisávamos construir uma estrutura de repetição que pudesse repetir enquanto o ponteiro não fosse nulo. Observe os trechos abaixo e assinale qual a afirmativa correta. I if (ptr !=NULL) II if( !ptr ) III if(ptr) Questão8 a Questão9 a IV while (ptr !=NULL) V while (ptr) IV e V estão corretas. I e II estão corretas. I e IV estão corretas III e V estão corretas III está correta Respondido em 23/05/2021 12:34:08 Gabarito Comentado Acerto: 1,0 / 1,0 Assinale a alternativa que traz uma afirmação incorreta sobre as diversas implementações da estrutura de dados lista. A estrutura do nó da lista duplamente encadeada deve, obrigatoriamente, possuir um ponteiro para o nó anterior e outro para o nó seguinte, permitindo movimentação para frente e para trás. A lista simplesmente encadeada é adequada para a resolução de problemas em que os elementos da lista devem ser percorridos em apenas uma direção. Listas encadeadas em geral são preferíveis em relação às listas sequenciais, especialmente por serem mais eficientes e sempre utilizarem menos espaço de armazenamento na memória. A lista sequencial deve ser implementada com o uso de estruturas de vetor, pois essas essas estruturasutilizam o conceito de alocação estática e dispõem seus elementos de forma contígua na memória. A lista circular é toda lista, independente do tipo de alocação, em que é formado um ciclo entre seus elementos. Por exemplo, quando o último elemento da lista aponta para o primeiro. Respondido em 23/05/2021 12:39:06 Explicação: Analisando cada item. >> A estrutura do nó da lista duplamente encadeada deve, obrigatoriamente, possuir um ponteiro para o nó anterior e outro para o nó seguinte, permitindo movimentação para frente e para trás. Afirmativa correta, que segue a definição de lista duplamente encadeada. Não marcar o item. >> A lista simplesmente encadeada é adequada para a resolução de problemas em que os elementos da lista devem ser percorridos em apenas uma direção. Afirmativa correta. Em uma lista simplesmente encadeada existe ponteiro para o início da lista. Por isso, não dá para percorrer tal lista do fim para o início. Nâo marcar o item. >> A lista sequencial deve ser implementada com o uso de estruturas de vetor, pois essas essas estruturas utilizam o conceito de alocação estática e dispõem seus elementos de forma contígua na memória. Afirmativa correta. O vetor pode até ser dinâmica, mas usualmente usa alocação estática de memória e é o recurso usado Questão10 a na implementação das listas sequenciais. Não marcar o item. >> A lista circular é toda lista, independente do tipo de alocação, em que é formado um ciclo entre seus elementos. Por exemplo, quando o último elemento da lista aponta para o primeiro. Afirmativa correta. >> Listas encadeadas em geral são preferíveis em relação às listas sequenciais, especialmente por serem mais eficientes e sempre utilizarem menos espaço de armazenamento na memória. Afirmativa falsa porque as listas encadeadas não ocupam menos espaço que as listas sequencias. Cada nó de uma lista simplemente encadeada, por exemplo, tem um campo de dado e um campo que é ponteiro. Marcar esta afirmativa. javascript:abre_colabore('38403','226420021','4607146096');
Compartilhar