Buscar

ESTRUTURA DE DADOS Exercicio 10

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 4 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

21/05/2018 EPS: Alunos
http://simulado.estacio.br/alunos/ 1/4
 
 1a Questão
Os registros também conhecidos como estruturas, são estruturas de dados do tipo heterogêneo, ou seja, permitem que valores de tipos
diferentes possam ser armazenados em uma mesma estrutura. Analisando a estrutura abaixo, a mesma pode ser utilizada para qual tipo de
estrutura de dados, marque a alternativa correta.
struct nomeRegistro{
 int info;
 struct nomeRegistro* ant;
 struct nomeRegistro* prox;
 };
typedef struct nomeRegistro NOMEREGISTRO;
Lista encadeada
Matriz
 Lista duplamente encadeada
Pilha
Fila
 
 
 
Ref.: 201703536388
 2a Questão
Uma estrutura de dados em lista duplamente encadeada permite na cadeia movimentos para
 frente e para trás, apenas.
cima e para baixo, apenas.
frente, apenas.
cima e para baixo ou para frente e para trás.
trás, apenas.
 
 
 
Ref.: 201704355395
 3a Questão
Sobre as estruturas de dados lineares, assinale V ou F:
I - Em uma pilha, o último elemento a entrar é o primeiro a sair.
II - Em uma fila, o primeiro elemento a entrar é o último a sair.
III - Uma lista permite que as inserções possam ser feitas em qualquer lugar (posição), mas as remoções, não.
IV - Em uma lista circular com encadeamento simples, o primeiro elemento aponta para o segundo e para o último.
V - Para remover um elemento de uma lista duplamente encadeada, deve-se alterar o encadeamento dos elementos anterior e próximo ao
elemento removido. A sequência correta de cima para baixo:
F,V,V,F,F
 V,F,F,F,V
V,F,V,F,V
V,F,F,V,F
F,F,V,V,V
 
 
Explicação:
Vamos analisar cada afirmativa.
Analisando a afirmativa I : Correto, pois a estrutura pilha segue a lógica LIFO.
 
Analisando a afirmativa II : Falso. Na estrutura de dados fila, o primeiro a entrar é o primeiro a
sair, pois segue a lógica FIFO.
 
Analisando a afirmativa III : Falso. Em uma lista tanto as inserções quanto as remoções podem ser
feitas em qualquer posição.
 
Analisando a afirmativa IV : Falso. Em uma lista circular, o1o. elemento aponta para o segundo
elemento, mas o último elemento aponta para o 1º. elemento da lista.
21/05/2018 EPS: Alunos
http://simulado.estacio.br/alunos/ 2/4
 
Analisando a afirmativa V : Está correta.
 
Logo, a opção correta é V, F, F, F, V
 
 
 
Ref.: 201703528047
 4a Questão
Uma estrutura de dados em lista duplamente encadeada permite na cadeia movimentos para:
 frente e para trás, apenas.
frente, apenas.
trás, apenas.
cima e para baixo, apenas.
cima e para baixo ou para frente e para trás.
 
 
Explicação:
Nas listas dulamente encadeadas há 2 ponteiros : um que aponta para o nó à direita e outro que aponta para o nó à esquerda.
 
 
 
Ref.: 201704270191
 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 nunca no começo ou no meio.
Só poderei inserir no final da lista e no começo somente se ela estiver cheia.
 Só poderei inserir no começo ou no fim, mas não no meio.
 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.
 
 
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. 
 
 
 
Ref.: 201703738790
 6a 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 possibilitam o percurso do ponteiro p da esquerda para direita.
As operações inserem novo nodo, após o nodo apontado pelo ponteiro p.
 As operações removem o nodo apontado pelo ponteiro p.
As operações possibilitam o percurso do ponteiro p da direita para esquerda.
As operações possibilitam a busca de um nodo apontado pelo ponteiro p.
 
 
 
Ref.: 201704184034
 7a Questão
 Considere uma lista duplamente encadeada não circular em que
 
struct nodupla {
 int dado;
21/05/2018 EPS: Alunos
http://simulado.estacio.br/alunos/ 3/4
 struct nodupla *dlink; // aponta p/ o nó à direita
 struct nodupla *elink; // aponta p/ o nó à esquerda
 };
 
sendo nodupla *p; //ponteiro para o início da lista
 
 A opção que corretamente mostra as instruções para inserir um valor no início da lista apontada por p é :
 
n nodupla *novo;
 
 novo = new nodupla;
 novo->dado = valor;
 novo->elink = NULL;
 if (p != NULL)
 p->elink = novo;
 p = novo;
 
 
n 
 
 nodupla *novo;
 
 novo = new nodupla;
 novo->dado = valor;
 novo->dlink = p;
 if (p != NULL)
 p->elink = novo;
 p = novo;
 
 nodupla *novo;
 
 novo = new nodupla;
 novo.dado = valor;
 novo.dlink = p;
 novo.elink = NULL;
 if (p != NULL)
 p.elink = novo;
 p = novo;
 nodupla *novo;
 
 novo = new nodupla;
 novo->dado = valor;
 novo->dlink = p;
 novo->elink = NULL;
 if (p != NULL)
 p->elink = novo;
 p = novo;
 
 nodupla *novo;
 
 novo = new nodupla;
 novo->dado = valor;
 novo->dlink = p;
 novo->elink = NULL;
 p->elink = novo;
 p = novo;
 
 
 
 
Ref.: 201704150072
 8a 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 possibilitam o percurso do ponteiro p da esquerda para direita.
 As operações inserem novo nodo, após o nodo apontado pelo ponteiro p.
As operações possibilitam o percurso do ponteiro p da direita para esquerda.
 As operações removem o nodo apontado pelo ponteiro p.
As operações possibilitam a busca de um nodo apontado pelo ponteiro p.
 
 
 
21/05/2018 EPS: Alunos
http://simulado.estacio.br/alunos/ 4/4

Continue navegando

Outros materiais