Buscar

estrutura de dados exercicio aula 6

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

1. 
 
 
Observe a função que manipula uma pilha e assuma que TAM é uma constante definida com valor 5. Saiba 
que o nome da função já explícita a finalidade dela. 
 
Considere a chamada da função conforme linha abaixo, sabendo-se que vet é um vetor de tamanho 5 e que 
não tem nenhum valor ainda: 
 
 
Analise as afirmativas abaixo que sugerem correções, ou não, na definição na função e assinale a opção 
que contem as afirmativas corretas. 
 
I Faltou & antes da variável vetor e irá acusar erro. 
II A variável topo está sem tipo. 
III O teste está correto porque o índice do primeiro elemento do vetor em C++ é 1, obrigatoriamente. 
IV Na linha comentada deveria estar presente um comando de atribuição que decrementaria a variável 
topo. 
V A linha vetor[topo]=valor; está correta. 
 
 
 
 
I e II estão corretas 
 
 
I e III estão corretas 
 
 
I, II e IV estão corretas 
 
 
I , III e V estão corretas 
 
 
II e V estão corretas 
 
 Gabarito Comentado 
 
 
 
2. 
 
 
Sabe-se que Push() coloca um elemento na pilha, Pop() remove um elemento da pilha e Top() exibe o 
elemento que se encontra no topo. 
 
Assinale a opção que indica o número que aparecerá após a execução das funções abaixo. 
 
Sequencia: Push() / Push()/ Pop()/ Push()/Pop()/ Top() 
Números que deverão ser empilhados nessa ordem: 8/ 15/ 23/ 13 / 18 
 
 
 
 
23 
 
 
13 
 
 
18 
 
 
15 
 
 
8 
 
 Gabarito Comentado 
 
 
 
3. 
 
 
Tei Ping, estudante de computação, precisou implementar parte de um jogo que trabalhava com cartas 
especiais. Cada carta possui um número e uma letra. Alguns jogadores teriam que jogar as cartas na mesa, 
enquanto outros deveriam devolver as cartas na sequência inversa à jogada. Tei Ping estudou o mecanismo do 
jogo e decidiu usar a melhor estrutura de dados na sua implementação. Qual a estrutura escolhida ? 
 
 
 
 
lista 
 
 
pilha 
 
 
árvore 
 
 
grafo 
 
 
fila 
 
 Gabarito Comentado 
 
 
 
4. 
 
 
As pilhas sequenciais são estruturas que guardam a ordem reversa dos dados nelas armazenados, e isto em 
muitas ocasiões é muito vantajoso. A operação usada para inserir um elemento X numa pilha é conhecida 
na literatura como PUSH (X). Para remover um elemento de uma pilha a operação é o POP( ). Assim estas 
duas funções devem implentar o algoritmo LIFO (Last In - First Out ) ou o último a entrar é o primeiro a 
sair. Sendo assim se aplicarmos as seguintes operações em uma PILHA vazia: 
PUSH(10),PUSH(5),POP(),PUSH(7),POP(),PUSH(2),POP(),POP( ). 
Quais valores restarão na pilha? 
 
 
 
 
Apenas o 10 
 
 
Apenas o 2 
 
 
10 e 2 
 
 
7 e 2 
 
 
Nenhum, a pilha estará vazia. 
 
 Gabarito Comentado 
 
 
 
5. 
 
 
Quando as inserções e as remoções ocorrem sempre no mesmo lado da lista, trata-se de uma estrutura de 
dados denominada. 
 
 
 
 
Pilha. 
 
 
Vetor. 
 
 
Lista circular. 
 
 
Lista encadeada. 
 
 
Fila. 
 
 Gabarito Comentado 
 
 
 
6. 
 
 
Pilhas são estruturas de dados que se utilizam do algoritmo LIFO, last in first 
out, ou melhor, o último a entrar é o primeiro a sair. Desta forma pode-se 
abstrair que existe apenas um local para a saída e a entrada de dados, ou seja 
o topo da pilha. 
Supondo que uma pilha seja implementada por um vetor de inteiros de 
tamanho 10 e que exista uma variável global chamada topo para indexar esta 
posição de entrada e saída de dados e ainda quando esta variável assume o 
valor -1 indica que a pilha está vazia. Marque a opção que melhor ilustra a 
função de exclusão de um dado do vetor pilha, supondo ainda que o vetor 
tenha sido declarado inicialmente de forma global. 
 
 
 
 void pop(){ if(pilha != -1) pilha[topo];} 
 
 void pop(){ if(topo != -1) pilha[topo-1];} 
 
 void pop(){ if(pilha != -1) pilha[topo-1];} 
 
 void pop(){ if(topo != -1) topo++;} 
 
 void pop(){ if(topo != -1) topo--;} 
 
 Gabarito Comentado 
 
 
 
7. 
 
 
A estrutura de dados do tipo pilha (stack) é um tipo abstrato de dado baseada no princípio: 
 
 
 
 
Da localidade de referência. 
 
 
Last In First Out (LIFO). 
 
 
First In First Out (FIFO). 
 
 
Da indiferença. 
 
 
De dividir para conquistar. 
 
 Gabarito Comentado 
 
 
 
8. 
 
 
Na pequena mercearia do Sr. Manuel os pedidos são anotados no papel e assim que montam um lote com 10 
listas de compras dos fregueses, as entregas começam. As compras de cada freguês são postas em uma caixa. 
As caixas são organizadas no veículo de entrega respeitando a ordem da entrega, ou seja, a 1a. caixa a ser 
entregue fica na frente das demais caixas e assim, sucessivamente. Dessa forma, a última caixa a ser entregue 
ficará no final do veículo, após todas as outras caixas que deverão ser entregues primeiro. Qual a estrutura de 
dados mais adequada que traduz a organização das pizzas no veículo de entrega ? 
 
 
 
 
pilha 
 
 
lista 
 
 
grafo 
 
 
fila 
 
 
árvore 
 
 Gabarito Comentado

Continue navegando

Outros materiais