Prévia do material em texto
30/05/2020 EPS simulado.estacio.br/alunos/?user_cod=2356180&matr_integracao=201903289866 1/4 ESTRUTURA DE DADOS 10a aula Lupa PPT MP3 Exercício: CCT0826_EX_A10_201903289866_V1 22/05/2020 Aluno(a): JESSIKA DE AGUIAR BRITO 2020.1 EAD Disciplina: CCT0826 - ESTRUTURA DE DADOS 201903289866 1a Questão As listas encadeadas podem ser elaboradas de duas formas utilizando uma técnica de encadeamento simplesmente ou encadeamento duplo. O que difere uma lista simplesmente encadeada de uma lista duplamente encadeada? Em uma lista simplesmente encadeada cada nó aponta para nó seguinte e para o nó anterior. Em uma lista simplesmente encadeada cada nó aponta para um único nó enquanto a lista duplamente encadeada aponta para mais de um nó. Em uma lista duplamente encadeada, cada nó aponta para um nó enquanto a lista simplesmente encadeada aponta para mais de um nó. Em uma lista duplamente encadeada cada nó aponta para nó seguinte. Em uma lista duplamente encadeada cada nó aponta para nó seguinte e para o primeiro nó da fila. Respondido em 22/05/2020 00:59:49 Gabarito Coment. 2a Questão Em uma lista duplamente encadeada, seus nodos são compostos por campos cujos tipos podem ser de diferentes naturezas, entretanto dois de seus campos devem ser ponteiros para o mesmo tipo do nodo, são estes os ponteiros ant e prox, que apontam, respectivamente, para o nodo anterior e para o próximo nodo. Esta característica permite que a estrutura seja percorrida em ambos os sentidos. Assim analisando as operações a seguir: p->ant->prox=p->prox; p->prox->ant=p->ant; Sendo p um ponteiro que aponta para um dos nodos da lista, pode-se afirmar que: As operações removem o nodo apontado pelo ponteiro p. As operações possibilitam a busca de um nodo apontado pelo ponteiro p. As operações possibilitam o percurso do ponteiro p da direita para esquerda. As operações possibilitam o percurso do ponteiro p da esquerda para direita. As operações inserem novo nodo, após o nodo apontado pelo ponteiro p. Respondido em 22/05/2020 01:00:11 Gabarito Coment. 3a Questão http://simulado.estacio.br/alunos/inicio.asp javascript:voltar(); javascript:diminui(); javascript:aumenta(); javascript:abre_frame('2','10','','',''); javascript:abre_frame('3','10','','',''); 30/05/2020 EPS simulado.estacio.br/alunos/?user_cod=2356180&matr_integracao=201903289866 2/4 Um tipo de estrutura de dados é declarada em C como: typedef struct no *apontador; struct no{ int valor; apontador esq, dir; } onde esq e dir representam ligações para os dados da esquerda e direita, respectivamente. Qual das seguintes alternativas é uma implementação correta da operação que inverte as posições dos dados da esquerda e da direita uma estrutura p, onde t é um apontador auxiliar. p->esq = p->dir; t = p->esq; p->dir = t; t=p->dir; p->esq = p->dir; p->dir = t; t=p->dir; p->dir = p->esq; p->esq = t; p->dir=t; p->esq = p->dir; p->dir = t; t=p; p->esq = p->dir; p->dir = p->esq; Respondido em 22/05/2020 01:00:00 Explicação: O código pedido é: t=p->dir; p->dir = p->esq; p->esq = t; 4a Questão Observe a struct, definida globalmente, e um trecho de uma função que manipula uma Lista Duplamente Encadeada. struct listaDE { int info; struct listaDE* ant; struct listaDE* prox; }; ... listaDE* novo = new listaDE; novo->info = valor; novo->prox = LISTA; novo->ant = NULL; Assinale a alternativa que apresenta o protótipo dessa função listaDE *insereFim(listaDE *LISTA, int valor); void exibeIpF(listaDE *LISTA); listaDE *remove(listaDE *LISTA, int valor); listaDE *busca (listaDE *LISTA, int valor); listaDE *insereInicio(listaDE *LISTA, int valor); Respondido em 22/05/2020 01:00:08 30/05/2020 EPS simulado.estacio.br/alunos/?user_cod=2356180&matr_integracao=201903289866 3/4 Gabarito Coment. 5a Questão Ao criarmos uma rotina para inserir um dado em uma LISTA de dados duplamente encadeada e circular, nos deparamos com as seguintes cuidados: Só poderei inserir no final da lista e no começo somente se ela estiver cheia. Posso inserir no começo, no meio ou no fim. Só poderei inserir no final da lista e no começo somente se ela estiver vazia. Só poderei inserir no final da lista e nunca no começo ou no meio. Só poderei inserir no começo ou no fim, mas não no meio. Respondido em 22/05/2020 01:00:21 Explicação: Em uma lista duplamente encadeada circular ou não, podemos inserir ou remover de qualquer parte da lista. Não há problema na inserção se a lista estiver vazia. 6a Questão Com relação à lista duplamente encadeada, é correto afirmar que : A lista pode ser percorrida com igual facilidade para a direita ou para a esquerda, pois existem dois ponteiros. Não pode haver remoções no meio da lista. Consome menos memória do que uma lista simplesmente encadeada, se tivermos uma mesma aplicação. Não pode ser vazia. A lista precisa ter sempre um ponteiro apontando para o 1º. nó Respondido em 22/05/2020 01:00:24 Gabarito Coment. 7a Questão São listas que, além de cada elemento indicar o elemento seguinte, também indicam aquele que o antecede, ou melhor, cada elemento é ligado a seu sucessor e a seu predecessor, possibilitando um caminhamento no sentido início-fim ou no sentido oposto (fim-início). O texto acima, sobre Estrutura de Dados, descreve : Listas Duplamente Encadeadas Listas Circulares Árvore Listas simplesmente encadeadas Grafo Respondido em 22/05/2020 01:00:29 Explicação: O enunciado é a descrição de listas duplamente encadeadas, que terão 2 ponteiros em cada nó, um apontando para o nó anterior e outro apontando para o nó posterior. 8a Questão 30/05/2020 EPS simulado.estacio.br/alunos/?user_cod=2356180&matr_integracao=201903289866 4/4 Uma estrutura de dados em lista duplamente encadeada permite na cadeia movimentos para cima e para baixo ou para frente e para trás. frente, apenas. trás, apenas. cima e para baixo, apenas. frente e para trás, apenas. Respondido em 22/05/2020 01:00:35 Gabarito Coment. javascript:abre_colabore('38403','194933882','3896033235');