Questões de Algoritmos e Estrutura de Dados - Pilhas para Concurso
Foram encontradas 244 questões
• Push (n): empilha um valor n
• Pop (n): desempilha um valor colocando-o em n
• Sum(): é o mesmo que a sequência
Pop(a)
Pop(b)
Push(a+b)
• Sub(): é o mesmo que a sequência
Pop(a)
Pop(b)
Push(a – b)
• Mul(): é o mesmo que a sequência
Pop(a)
Pop(b)
Push(a x b)
• Div(): é o mesmo que a sequência
Pop(a)
Pop(b)
Push(a ÷ b)
A sequência de operações
Push(3)
Push(7)
Sum()
Push(2)
Push(8)
Push(3)
Push(2)
Sub()
Mul()
Sum()
Div()
Push(7)
Push(6)
Sub()
Div()
deixará, no topo da pilha, o resultado do cálculo da expressão
- Pilha é uma lista (LIFO) de itens com a restrição de que inserções (Push) e retiradas (Pop) de itens só podem ser feitas no final da lista (Topo da lista).
- CriarP cria uma pilha P vazia.
- Push(P, i) insere o item i no Topo da pilha P.
- Pop(P) retira e retorna da pilha P o item que está no Topo da pilha P.
- Pop(P) para pilha P vazia = Erro.
Com essa especificação, quais são, respectivamente, os resultados das expressões
Pop(Push(CriarP, X)) ; Pop (CriarP) e Pop(Push(P,(Pop(Push(CriarP, X))))) ?
I. A operação de inserção de um elemento na pilha precisa reorganizar a estrutura de dados, podendo gastar um tempo de execução de O(n).
II. A operação de retirada de um elemento da pilha é uma operação de tempo constante O(1).
III. Na operação de consultar toda a pilha, todos os elementos são percorridos, gastando-se um tempo de execução de O(n).
Estão CORRETAS as afirmativas:
PUSH(P,"B")
PUSH(P,"R")
PUSH(P,"A")
PUSH(P,"S")
PUSH(P,"I")
PUSH(P,"L")
PUSH(P,"2")
PUSH(P,"0")
PUSH(P,"1")
PUSH(P,"1")
TOP(P)
POP(P)
TOP(P)
POP(P)
POP(P)
POP(P)
Após essa sequência, que elemento é retornado pela operação TOP(P)?
I. Em uma pilha implementada por meio de arranjos (vetores), é necessário um cursor para controlar a posição do item no topo da pilha.
II. As pilhas possuem a seguinte propriedade: o último item inserido é o primeiro item que pode ser retirado da lista.
III. Os itens da pilha são colocados um sobre o outro, com o item inserido mais recentemente no fundo e o item inserido menos recentemente no topo.
IV. As pilhas são chamadas de listas lifo (last in, first out).
Dados de entrada: 11, 12, 23, 14, 25, 50, 8, 18, 29, 10
As estruturas mostradas ficam
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
Está correto o que se afirma APENAS em
O método concat() irá produzir uma pilha na qual o elemento que estará no seu topo será o topo da pilha s1. Além disso, o elemento no topo de s2 ficará imediatamente abaixo da base de s1. A Figura a seguir exibe a pilha produzida pelo método concat() a partir das pilhas s1 e s2:
Qual implementação do método concat() produz o resultado descrito acima?
É impossível implementar uma estrutura de dados tipo pilha como um TAD, visto que a pilha consiste em um dado do tipo primitivo.
Uma pilha — uma estrutura de dados que permite a inserção de novos elementos e a remoção de elementos antigos — sujeita-se à seguinte regra de operação: sempre que houver uma remoção, o elemento removido corresponderá ao elemento presente na estrutura há mais tempo.
Pilha é uma estrutura de dados do tipo lista linear, em que as operações TOP, PUSH e POP são realizadas no topo da pilha e, por isso, são denominadas LIFO.
1) Para implementar um tipo abstrato de dados “pilha” baseado no tipo abstrato de dados “lista”, as funções InserePilha() e RetiraPilha() podem ser implementadas usando as funções InsereComeço() e RetiraComeço(), respectivamente.
2) Para implementar um tipo abstrato de dados “fila” baseado no tipo abstrato de dados “lista”, as funções InsereFila() e RetiraFila() podem ser implementadas usando as funções InsereFim() e RetiraComeço(), respectivamente.
3) Para implementar um tipo abstrato de dados “fila” baseado no tipo abstrato de dados “lista”, as funções InsereFila() e RetiraFila() podem ser implementadas usando as funções InsereComeço() e RetiraComeço(), respectivamente.
Assinale a alternativa correta.