Escolar Documentos
Profissional Documentos
Cultura Documentos
ESTRUTURAS DE DADOS
EXERCÍCIOS
1. Desenhe a evolução do conteúdo de uma pilha (incialmente vazia), considerando as seguintes sequências
de instruções:
4. As estruturas de dados lineares (fila, pilha e lista) são muito utilizadas para resolver problemas
computacionais. Cada uma dessas estruturas pode ser implementada com diferentes características e
atendem a diferentes tipos de problemas. Sobre as características dessas estruturas de dados, atribua V
(verdadeiro) ou F (falso) para as afirmativas a seguir.
a) S - O - L - T - O
b) O - T - R - E - P
c) P - E - R - T - O
d) O - T - L - O - S
e) P - O - R - L – S
7. As pilhas e as filas são estruturas de dados essenciais para os sistemas computacionais. Sobre elas é
correto afirmar que:
Qual a única sequência de estruturas de dados apresentadas a seguir que pode ter sido usada no cenário
descrito acima?
a) Fila - Pilha - Fila.
b) Fila - Fila - Pilha.
c) Fila - Pilha - Pilha.
d) Pilha - Fila - Pilha.
e) Pilha - Pilha - Pilha.
9. Implemente as operações: insere e retira de uma fila. Sua implementação deve considerar alocação
dinâmica de memória e pode ser descrita usando pseudocódigo ou Java.
10. Implemente uma pilha de inteiros usando pseudocódigo ou Java através de alocação estática (usar um
vetor) de memória.
11. Implemente uma pilha usando pseudocódigo ou Java através de alocação dinâmica de memória.
12. Analise o código a seguir, que implementa uma operação de adição de um novo elemento em uma lista
duplamente encadeada.
13. Insira os dados de entrada (ver a seguir) numa fila. Em seguida retire cada dado da fila e insira numa pilha.
Mostre a pilha. Depois retire os dados da pilha e insira na fila. Mostre a fila.
Dados de entrada: 11, 12, 23, 14, 25, 50, 8, 18, 29, 10
I. Pilha: (topo) 10 - 29 - 18 - 8 - 50 - 25 - 14 - 23 - 12 - 11
II. Fila: (começo) 11 - 12 - 23 - 14 - 25 - 50 - 8 - 18 - 29 - 10 (fim)
III. Fila: (começo) 10 - 29 - 18 - 8 - 50 - 25 - 14 - 23 - 12 - 11 (fim)
IV. Pilha: (topo) 11 - 12 - 23 - 14 - 25 - 50 - 8 - 18 - 29 - 10
V. A fila mostrada fica com os elementos em ordem invertida dos dados de entrada
14. Escreva um método que receba como parâmetros duas listas (L1 e L2) e gere uma terceira lista (L3)
contendo somente os valores negativos.
15. Em relação às estruturas de dados lineares: listas, pilhas e filas, cite e explique o desempenho,
complexidade ou eficiência computacional das operações apresentadas abaixo. Use a notação big “O” para
expressar a eficiência. Considere, também, o pior dos cenários.