Você está na página 1de 5

25/05/2020 EPS

ESTRUTURA DE DADOS
Lupa
9a aula
PPT MP3

Exercício: CCT0826_EX_A9_201901306054_V2 25/05/2020

Aluno(a): JONATAS RICIANO SILVEIRA 2020.1 EAD

Disciplina: CCT0826 - ESTRUTURA DE DADOS 201901306054

1a Questão

Sobre as estruturas de dados existentes podemos afirmar que:

A estrutura do tipo LIFO sempre realiza a remoção do elemento mais antigo inserido.
Encadeamento estático e dinâmico apresentam o mesmo funcionamento de alocação na estrutura do tipo PILHA.
Na estrutura do tipo FIFO, as informações são inseridas no início e removidas do final.
Na estrutura do tipo LIFO, as informações são inseridas no início e removidas do final.
Na estrutura das Pilhas a manipulação dos dados sempre se dá no topo.
Respondido em 25/05/2020 02:57:22

Explicação:

Na estrutura do tipo FIFO, as informações são inseridas no início e


removidas do final.
Falso. Fila segue a lógica FIFO, ou seja, o primeiro a entrar será o primeiro a
sair. Logo, insere no fim e retira do início da fila.
Na estrutura do tipo LIFO, as informações são inseridas no início e
removidas do final.
Falso. Pilha segue a lógica LIFO, o último a entrar será o primeiro a sair.
Insere-se no topo e retira-se do topo , ou seja, da mesma extremidade.
Na estrutura das Pilhas a manipulação dos dados sempre se dá no topo.
Verdade. SEgue-se a lógica LIFO.
Encadeamento estático e dinâmico apresentam o mesmo funcionamento de
alocação na estrutura do tipo PILHA.
Falso. No encadeamento estático a alocação é contígua e ocorre antes da
execução. No encadeamento dinâmico a alocação de memória ocorre em
tempo de execução e o armazenamento é encadeado.
A estrutura do tipo LIFO sempre realiza a remoção do elemento mais antigo
inserido.

simulado.estacio.br/alunos/?user_cod=2253538&matr_integracao=201901306054 1/5
25/05/2020 EPS

Falso. A remoção se dá no último inserido, ou seja, o mais novo inserido na pilha.

2a Questão

Estava um aluno estudando Lista Simplesmente Encadeada quando encontrou em um site a


definição da struct nodo e de uma função cujo nome você deverá escolher para substituir XXX nas
opções abaixo depois que analisar a função, assumindo que teste foi realizado, permitindo que a
operação fosse realizada.

struct nodo
{
int info;
struct nodo *prox;
};
nodo* XXX(nodo *ptr, int valor)
{
nodo *temp = new nodo;
...
temp->info = valor;
temp->prox = ptr;
return temp;
}

ListaNo
InsereNoFrente
RemoveNo
BuscaNaLista
InsereNoFim
Respondido em 25/05/2020 02:57:17

Gabarito
Coment.

3a Questão

Em termos da estrutura de dados do tipo FILA (fila encadeada com alocação dinâmica), a sequência de ações

insere(10), insere(3), insere(5), insere(8), remove(), remove(), insere(20),

promoveria a configuração da estrutura:

5 8 20
10 3 5 8 20
20 5 8
10 3 20
58
Respondido em 25/05/2020 02:57:36

Explicação:

insere(10), insere(3), insere(5), insere(8), remove(), remove(), insere(20),

10-> 3 -> 5 -> 8 após inserir 10,3,5 e 8. Inserção no fim

Depois do 1o. remove, temos 3->5->8

Depois do 2o. remove temos 5 -> 8

Ao ocorrer o último insere temos : 5 -> 8 - > 20, sendo que 5 esta no início e 20 no fim

simulado.estacio.br/alunos/?user_cod=2253538&matr_integracao=201901306054 2/5
25/05/2020 EPS

4a Questão

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)
IV while (ptr !=NULL)
V while (ptr)

III e V estão corretas


IV e V estão corretas.
III está correta
I e II estão corretas.
I e IV estão corretas
Respondido em 25/05/2020 02:58:49

Gabarito
Coment.

5a Questão

Seja o seguinte exemplo de nodo de uma lista de encadeada:

struct nodo{
float valor;
string produto;
nodo * proximo;
};
Sabendo-se que nesta lista o último nó ou nodo possui o campo próximo nulo
(null), marque a alternativa que representa corretamente a operação de busca
do último nodo, a partir de um ponteiro pt apontado para o primeiro nodo da
lista.

while(pt->próximo->proximo)pt=pt->próximo;
while(próximo)pt=próximo;
while(pt->próximo)pt=pt->próximo;
while(pt->próximo != null)pt=pt->próximo->proximo;
while(pt != null)pt=pt->próximo;
Respondido em 25/05/2020 02:59:08

Explicação:

O código será:

while(pt->próximo)pt=pt->próximo;

6a Questão

Para converter de decimal para binário usamos a estrutura de dados pilha. Assinale a opção que, corretamente, indica as ações
corretas para empilhar o resto da divisão gerado no processo de conversão, considerando uma lista simplesmente encadeada.
Considere o tipo definido abaixo :

simulado.estacio.br/alunos/?user_cod=2253538&matr_integracao=201901306054 3/5
25/05/2020 EPS

struct no {
int dado;
struct no *link;
};

É preciso alocar memória com new, armazenar o resto da divisão do número por 2 no campo dado do novo nó, apontar o
link do novo nó para o início da lista e enfim, retornar o ponteiro para o novo nó.
É preciso armazenar o resto da divisão do número por 2 no campo dado do primeiro nó da lista e retornar o ponteiro para
este nó.
Basta alocar memória com new, armazenar o resto da divisão do número por 2 no campo dado do novo nó e aterrar o link
do novo nó.
Basta alocar memória com new e armazenar o resto da divisão do número por 2 no campo dado do novo nó .
Não é necessário alocar memória com new. Basta criar uma struct do tipo no, armazenar o resto da divisão número por 2
no campo dado e aterrar o campo link.
Respondido em 25/05/2020 02:59:24

Gabarito
Coment.

7a Questão

A pilha é uma estrutura de dados que permite a inserção/ remoção de itens dinamicamente seguindo a norma de último a entrar,
primeiro a sair. Suponha que para uma estrutura de dados, tipo pilha, são definidos os comandos:

- PUSH (p, n): Empilha um número "n" em uma estrutura de dados do tipo pilha "p";

- POP (p): Desempilha o elemento do topo da pilha.

Considere que, em uma estrutura de dados tipo pilha p, inicialmente vazia, sejam executados os seguintes comandos:

PUSH (p, 10)

PUSH (p, 5)

PUSH (p, 3)

PUSH (p, 40)

POP (p)

PUSH (p, 11)

PUSH (p, 4)

PUSH (p, 7)

POP (p)

POP (p)

Após a execução dos comandos, o elemento no topo da pilha "p" e a soma dos elementos armazenados na pilha "p" são,
respectivamente,

7 e 29.
7 e 40.
11 e 80.
11 e 29.
4 e 80.
Respondido em 25/05/2020 02:59:39

Explicação:

Passo a Passo:

entra 10 // 10

entra 5 // 5 / 10

entra 3 // 3 / 5/ 10

entra 40 // 40 / 5 /10

retira 40 // 3 / 5 /10

entra 11 // 11 / 3 / 5 /10

entra 4 // 4 /11 / 3 / 5 /10

entra 7 // 7 / 4 / 11 / 3 / 5 /10

simulado.estacio.br/alunos/?user_cod=2253538&matr_integracao=201901306054 4/5
25/05/2020 EPS
retira 7 // 4 / 11 / 3 / 5 /10

retira 4 // 11 / 3 / 5 / 10

Resultado da pilha: 11 / 3 / 5 / 10

Topo: 11

Somatorio da pilha é: 29

8a Questão

Sabendo que uma fila encadeada possui seus nós definidos pela :

struct no {
int x;
no *prox;
};

Marque a alternativa que representa corretamente a criação ou alocação do nó na sintaxe do C++ para utilização na fila.

p *no -> new no;


no *p -> new no;
no p -> new no;
no *p=new no;
p *no=new no;
Respondido em 25/05/2020 02:59:57

Gabarito
Coment.

simulado.estacio.br/alunos/?user_cod=2253538&matr_integracao=201901306054 5/5