Baixe o app para aproveitar ainda mais
Prévia do material em texto
08/09/2021 13:21 Unicesumar - Ensino a Distância 1/8 ATIVIDADE 2 - ESOFT - ESTRUTURA DE DADOS I - 52/2021 Período:07/06/2021 08:00 a 21/06/2021 23:59 (Horário de Brasília) Status:ENCERRADO Nota máxima:1,00 Gabarito:Gabarito será liberado no dia 22/06/2021 00:00 (Horário de Brasília) Nota obtida:0,80 1ª QUESTÃO Considere o código em linguagem C a seguir: void function(tstruct estrutura, int tamanho) { if (estrutura.inicio == estrutura.fim) { printf("\nEstrutura vazia!\n\n"); system("pause"); } else { int i; for (i = 0; i < tamanho; i++) { estrutura.dados i = estrutura.dados i + 1 ; } estrutura.dados estrutura. fim = 0; estrutura.fim--; } } A função function _______________ o _______________ de uma estrutura do tipo _______________. Assinale a alternativa que complete as lacunas corretamente. ALTERNATIVAS retira, topo, pilha. retira, último, fila. inclui, último, fila. inclui, topo, pilha. retira, primeiro, fila. 08/09/2021 13:21 Unicesumar - Ensino a Distância 2/8 2ª QUESTÃO Tanto a fila como a pilha são conjuntos ordenados de itens. Apesar de simples, ambas as estruturas (fila e pilha) são amplamente utilizadas em diversas áreas da computação. OLIVEIRA, P. M.; PEREIRA, R. L. Estrutura de Dados I. Maringá: Unicesumar, 2019. Em muitos problemas computacionais, recomenda-se a utilização de Filas ou Pilhas. Cabe ao desenvolvedor analisar a situação e decidir qual política utilizar. Nesse aspecto, considere as seguintes situações: I. Gerenciamento de impressões. II. Organizar alguns livros de modo vertical. III. Gerenciar os itens inseridos em uma sacola. Assinale a alternativa que melhor corresponda às escolhas dos desenvolvedores na ordem das situações: ALTERNATIVAS Fila, Fila, Fila. Fila, Fila, Pilha. Pilha, Fila, Fila. Fila, Pilha, Pilha. Pilha, Pilha, Pilha. 3ª QUESTÃO 08/09/2021 13:21 Unicesumar - Ensino a Distância 3/8 Observe a figura a seguir: Considere essa fila a lista de todas os pacientes que estão aguardando para serem vacinados em um posto de saúde. A representação da estrutura de dados de uma lista simplesmente encadeada é bem comum na computação. Analise as afirmações a seguir com base em uma lista simplesmente encadeada: I - O último elemento da lista possui um ponteiro para o primeiro elemento da lista. II - Seus elementos sempre estarão armazenados sequencialmente na memória física. III - Se utilizar uma estrutura estática é necessário definir o seu tamanho no momento da sua criação. IV - A inserção de um novo elemento requer a atualização dos ponteiros dos elementos envolvidos, dispensando realizar o deslocamento físico dos elementos. É correto o que se afirma em: ALTERNATIVAS I, apenas. I e II, apenas. II e IV, apenas. III e IV, apenas. I, II, III e IV. 4ª QUESTÃO Na ciência da computação, a estrutura de dados do tipo pilha insere e remove os dados no seu topo. Essa estrutura é conhecida como Last In, First Out (LIFO), que pode ser traduzido por Último a Entrar, Primeiro a Sair. OLIVEIRA, Pietro Martins de; Pereira, Rogério de Leon. Estrutura de Dados I. Maringá-Pr.: Unicesumar, 2019. Um programador desenvolveu uma estrutura de dados do tipo pilha em um vetor com um número estático de registros. Quando a solução já estava implantada, certo o usuário do sistema selecionou a opção para desempilhar com o vetor ainda vazio. Assinale a alternativa que corresponde ao comportamento da pilha. ALTERNATIVAS 08/09/2021 13:21 Unicesumar - Ensino a Distância 4/8 Estouro. Explosão. Implosão. Inundação. Espalhamento. 5ª QUESTÃO As principais estruturas de dados estudadas na disciplina Estruturas de Dados I resume-se às estruturas estáticas e dinâmicas envolvendo listas, pilhas e filas. As listas, por exemplo, possuem características versáteis quanto a entrada e saída de elementos. Já as filas e pilhas apresentam regras para entrada e saída dos seus elementos. Dentro as diferentes realidades das estruturas de dados estudadas, analise as afirmações a seguir: I - Em pilhas as inserções e retiradas são feitas na extremidade, denominada topo. II - O topo pode ser definido no fim da estrutura, assim, a inserção e a remoção aconteceriam no fim. III - As listas inserirem e removerem no início, no meio e no final. IV - Nas filas as inserções e retiradas são feitas em extremidades opostas. É correto o que se afirma em: ALTERNATIVAS I e II, apenas. I e III, apenas. II e IV, apenas. I, II e IV, apenas. I, II, III e IV. 6ª QUESTÃO 08/09/2021 13:21 Unicesumar - Ensino a Distância 5/8 Analise o trecho de código abaixo. void inserir(struct no **lista, int valor) { struct no *p; if((p = malloc(sizeof(struct no))) == NULL) { printf("\nFalha de memória."); }else{ p->info = valor; p->esquerda = NULL; p->direita = *lista; if(*lista != NULL){ (*lista)->esquerda = p; } *lista = p; } } O trecho de código insere um novo elemento no início de uma lista. O processo de inserção acontece no início, então, além de verificar a alocação de memória, se a lista é nula, o nó a esquerda nulo e o nó a direita recebe a lista, senão o nó a esquerda recebe o valor. Pela explicação do código é possível afirmar que se trata de uma lista __________. Assinale a alternativa que completa corretamente a afirmação acima. ALTERNATIVAS circular balanceada duplamente circular duplamente encadeada simplesmente encadeada 7ª QUESTÃO Uma lista encadeada ou lista ligada linear permite que a partir do primeiro elemento da estrutura seja possível percorrer a lista toda na ordem correta, mesmo que fisicamente os dados não se encontrem ordenados na memória do computador. I - Uma lista simplesmente encadeada contém pelo menos dois campos: um de dados e um de endereço PORQUE II - O campo endereço servirá de ponteiro para o próximo elemento da lista. A respeito dessas asserções, assinale a opção correta. ALTERNATIVAS 08/09/2021 13:21 Unicesumar - Ensino a Distância 6/8 As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I. As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa correta da I. A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. As asserções I e II são proposições falsas. 8ª QUESTÃO A lista encadeada é uma forma de organização dos dados que garantir a ordenação independentemente do índice da variável. Dessa forma, a partir do primeiro elemento da estrutura, é possível percorrer toda a lista na ordem correta, mesmo que fisicamente os dados não se encontrem ordenados na memória do computador. A esse tipo de ordenação explícita chamamos lista encadeada. As listas podem ser simplesmente, duplamente ou circularmente encadeadas. OLIVEIRA, Pietro Martins de; Pereira, Rogério de Leon. Estrutura de Dados I. Maringá-Pr.: Unicesumar, 2019. Analise a definição a seguir: Essa lista é formada por pelo menos dois atributos: um de dados e um de endereço. O campo de dados contém o valor na lista e o campo endereço aponta para o próximo nó. O último nó, no entanto, deve apontar para o nó inicial da lista. Assinale a alternativa que corresponde a definição acima. ALTERNATIVAS Circular. Convexa. Duplamente circular. Duplamente encadeada. Simplesmente encadeada. 9ª QUESTÃO Uma pilha possui regras de entrada e saída, fora isso, as estruturas são muito parecidas. A lista possui como característica a ordenação independente da forma de armazenamento. Então, para implementar de forma dinâmica uma pilha, basta criar uma lista dinâmica e adicionar nela as regras LIFO: o último que entra é o primeiro que sai. Oliveira, P. M.; Pereira, R. de L. Estrutura de Dados I. Maringá-Pr.: Unicesumar, 2019. Assinale a alternativa que insereum elemento no topo da pilha, considerando que o topo é o final da pilha. ALTERNATIVAS 08/09/2021 13:21 Unicesumar - Ensino a Distância 7/8 void pilha_inserir(){ pilha.dados pilha. fim − 1 = 0; pilha.fim--; } void pilha_inserir(){ printf("\nDigite o valor a ser empilhado: "); scanf("%d", &pilha.dados pilha. fim ); pilha.fim++; } . void pilha_inserir(ptr_no pilha){ ptr_no atual; atual = (ptr_no) malloc(sizeof(no)); while(pilha->proximo != NULL){ atual = pilha; pilha = pilha->proximo; } atual->proximo = NULL; } void pilha_inserir(ptr_no pilha){ while(pilha->proximo != NULL){ pilha = pilha->proximo; } pilha->proximo = (ptr_no) malloc(sizeof(no)); pilha = pilha->proximo; pilha->dado = rand()0; pilha->proximo = NULL; } 10ª QUESTÃO 08/09/2021 13:21 Unicesumar - Ensino a Distância 8/8 O grafo é formado por dois conjuntos: um de vértices (V, que não pode ser nulo) e um de arestas (E). As arestas são formadas sempre por dois vértices que existam no conjunto V e não há nenhuma obrigatoriedade da existência de arestas no grafo. No caso dos pares de vértices serem ordenados, ou seja, uma aresta a = (v,w) é considerada diferente da aresta a = (w,v), o grafo é dito orientado ou dígrafo. Existem inúmeras formas de representar computacionalmente um grafo. Para a representação de pares ordenados, podemos utilizar uma matriz bidimensional. Essa matriz é chamada de Matriz de Adjacência. OLIVEIRA, Pietro Martins de; Pereira, Rogério de Leon. Estrutura de Dados I. Maringá-Pr.: Unicesumar, 2019. Dada a explicação acima, considere a seguinte matriz de adjacência: Avalie as afirmações a seguir: I – O caminho do vértice 4 até o vértice 2 poderá passar pelo vértice 3. II – O caminho do vértice 2 até o vértice 4 poderá passar pelo vértice 3. III– O caminho do vértice 0 até o vértice 4 poderá passar pelos vértices 1 ou 2. IV – O caminho do vértice 1 até o vértice 0 poderá passar pelos vértices 2 ou 3. É correto o que se afirma em: ALTERNATIVAS III, apenas. I e III, apenas. II e IV, apenas. III e IV, apenas. I, II, III e IV.
Compartilhar