SlideShare uma empresa Scribd logo
1 de 20
Representação de Pilhas com
a Estrutura Lista e Operações.
Departamento de Engenharia de Computação
Algoritmos e Estruturas de Dados
07/12/2016
1
AGENDA
Introdução
Operações
Implementação com lista encadeada
07/12/2016
2
INTRODUÇÃO
É uma lista linear.
É uma lista LIFO – last in / first out – último que entra
primeiro que sai.
É uma lista dinâmica: pode aumentar ou diminuir durante a
sua existência.
Operações de inserção e remoção são realizadas na mesma
extremidade.
07/12/2016
3
TOPO
BASE
Exemplos
Pilha de pratos
Porta-guardanapos de papel
Controle de sequencias de chamadas de rotinas
Sintaxe de expressões aritméticas
Etc.
07/12/2016
4
Operações
 Top: retorna o elemento que
está no topo da pilha. Não altera
o estado da Pilha.
 Push: insere um novo elemento
no topo da pilha. Altera o estado
da Pilha.
 Pop: remove um elemento do
topo da pilha. Altera o estado da
Pilha.07/12/2016
5
Xn
...
X6
X5
X4
X3
X2
X1
PUSH (P, x) POP (P, x)
PILHA (P)
Topo
Base
Operações
 Init: inicializa a pilha no estado vazia
(NIL ou NULL). Define um estado
inicial.
 IsEmpty: verifica se a pilha está
vazia. Do tipo booleano: retorna
TRUE somente se estiver vazia.
 IsFull: verifica se a pilha está cheia.
Do tipo booleano: retorna TRUE
somente quando não há mais
espaço de armazenamento07/12/2016
6
Xn
...
X6
X5
X4
X3
X2
X1
PUSH (P, x) POP (P, x)
PILHA (P)
Topo
Base
Operações
07/12/2016
7
1
PUSH (P, 1)
PILHA (P)
Topo
20
1
Topo
PUSH (P, 20)
500
20
1
Topo
PUSH (P, 500)
156
500
20
1
Topo
PUSH (P, 156)
349
156
500
20
1
Topo
PUSH (P, 349)
Operações
07/12/2016
8
349
156
500
20
1
POP (P, 349)
PILHA (P)
Topo
156
500
20
1
Topo
POP (P, 156)
500
20
1
Topo
POP (P, 500)
20
1
Topo
POP (P, 20)
1
Topo
POP (P, 1)
Operações9
20
55
20
PUS
H
100
55
20
100
55
20
55
20
60
55
20
60
55
20
55
20
55
20 20 20
PO
P
PUS
H
PUS
H
PO
P
PUS
H
PO
P
PO
P
Implementações
Pilha Estática
Pilha Dinâmica
07/12/2016
10
Implementação: Definição da Pilha
type
tipo_dado = integer;
tipo_pilha = ^tipo_no;
tipo_no = record
dado: tipo_dado;
prox: tipo_pilha;
end;
07/12/2016
11
Implementação: Criação da Pilha
Procedure Cria_Pilha(var p:tipo_pilha);
begin
p := Nil;
writeln('Lista Criada com Sucesso!');
end;
07/12/2016
12
Implementação: IsEmpty
Function Vazia(p: tipo_pilha): boolean;
begin
Vazia := (p=Nil);
end;
07/12/2016
13
Implementação: PUSH
procedure Empilha(var p: tipo_pilha; x: tipo_dado);
var
aux : tipo_pilha;
Begin
new(aux);
aux^.dado := x;
aux^.prox := p;
p := aux;
end;07/12/2016
14
Implementação: POP
function Desempilha(var p: tipo_pilha; var x : tipo_dado):boolean;
var
aux:tipo_pilha;
begin
if Vazia(p) Then
Desempilha := false
else
begin
Desempilha := True;
x := p^.dado;
aux := p;
p := p^.prox;
dispose(aux);
end;
end;
07/12/2016
15
Implementação: TOPO
Function Topo(p: tipo_pilha): integer;
Begin
Topo := p^.dado;
end;
07/12/2016
16
Implementação: Impressão da Pilha
procedure imprimir();
begin
if Vazia(p) Then
writeln('Pilha Vazia')
else
begin
writeln(' IMPRIMINDO TODO O CONTEÚDO DA PILHA ');
aux:=p;
while(aux <> nil)do //imprimindo lista
begin
write(' dado : ');
writeln(aux^.dado);
aux := aux^.prox;
end; //while
end; //if
end;
07/12/2016
17
Atividade em Sala de Aula
07/12/2016
18
Referências
1. Deitel, H. M.; Deitel, P. J. Java: Como Programar. Tradução: Edson
Furmankiewicz; Revisão Técnica: Fábio Luis Picelli Lucchini. 6.ª Edição. São Paulo:
Pearson Prentice Hall, 2005. Cap. 17, p. 607 – 644.
2. Deitel, H. M.; Deitel, P. J. C: Como Programar. Tradução: Daniel Vieira; Revisão
Técnica: César Caetano. 6.ª Edição. São Paulo: Pearson Prentice Hall, 2011. Cap. 12,
p. 379 – 413.
3. Deitel, H. M.; Deitel, P. J. C++: Como Programar. Tradução: Edson
Furmankiewicz; Revisão Técnica: Fábio Luis Picelli Lucchini. 5.ª Edição. São Paulo:
Pearson Prentice Hall, 2006. Cap. 21, p. 789 – 845.
4. Schildt, H.; Skrien, D. Programação com Java: Uma Introdução Abrangente.
Tradução: Aldir José Coelho Cêrrea da Silva. Revisão Técnica: Maria Lúcia Blanck
Lisbôa. Porto Alegre: AMGH, 2013. Cap. 25, p. 911 – 966
07/12/2016
19
Referências
5. Ziviani, N. Projeto de Algoritmos com Implementações em Pascal e C.
3.ª ed. rev. e amp. São Paulo: Cengage Learning, 2015. Cap. 3, p. 69 – 100.
6. Forouzan, B., Mosharraf, F. Fundamentos da Ciência da Computação.
Tradução: Solange Aparecida Visconti. Revisão Técnica: Ronaldo A. L.
Gonçalves. São Paulo: Cengage Learning, 2011. Cap. 11, p. 257 – 278.
7. Pereira, S. L. Estruturas de Dados Fundamentais: Conceitos e
Aplicações. São Paulo: Érica, 1996.
8. Ascencio, A. F. G.; Araújo, G. S. Estruturas de Dados: Algoritmos,
Análise da Complexidade e Implementações em Java e C/C++. São Paulo:
Pearson Prentice Hall, 2010. Cap. 4, p.183 – 200.
07/12/2016
20

Mais conteúdo relacionado

Mais procurados

BD I - Aula 08 A - Algebra Relacional
BD I - Aula 08 A - Algebra RelacionalBD I - Aula 08 A - Algebra Relacional
BD I - Aula 08 A - Algebra RelacionalRodrigo Kiyoshi Saito
 
Inteligência Artificial - Inferência Ascendente e Descendente
Inteligência Artificial - Inferência Ascendente e DescendenteInteligência Artificial - Inferência Ascendente e Descendente
Inteligência Artificial - Inferência Ascendente e DescendenteAldisio Medeiros
 
Comparativo bubble sort e quick sort
Comparativo bubble sort e quick sortComparativo bubble sort e quick sort
Comparativo bubble sort e quick sortDaiana de Ávila
 
área de trabalho - visão geral
área de trabalho - visão geral área de trabalho - visão geral
área de trabalho - visão geral CedepBlog
 
Análise estruturada de sistemas - Modelo de contexto
Análise estruturada de sistemas - Modelo de contextoAnálise estruturada de sistemas - Modelo de contexto
Análise estruturada de sistemas - Modelo de contextoLuciano Almeida
 
Introdução a Algoritmos: Conceitos Básicos
Introdução a Algoritmos: Conceitos BásicosIntrodução a Algoritmos: Conceitos Básicos
Introdução a Algoritmos: Conceitos BásicosElaine Cecília Gatto
 
Curso de Java: Introdução a lambda e Streams
Curso de Java: Introdução a lambda e StreamsCurso de Java: Introdução a lambda e Streams
Curso de Java: Introdução a lambda e StreamsHelder da Rocha
 
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)Leinylson Fontinele
 
Estrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na práticaEstrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na práticaLeinylson Fontinele
 
Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada Adriano Teixeira de Souza
 
Linguagem de Programação Java para Iniciantes
Linguagem de Programação Java para IniciantesLinguagem de Programação Java para Iniciantes
Linguagem de Programação Java para IniciantesOziel Moreira Neto
 

Mais procurados (20)

ArrayList Java
ArrayList JavaArrayList Java
ArrayList Java
 
BD I - Aula 08 A - Algebra Relacional
BD I - Aula 08 A - Algebra RelacionalBD I - Aula 08 A - Algebra Relacional
BD I - Aula 08 A - Algebra Relacional
 
Linguagem C - Vetores
Linguagem C - VetoresLinguagem C - Vetores
Linguagem C - Vetores
 
Matrizes em c#
Matrizes em c#Matrizes em c#
Matrizes em c#
 
Inteligência Artificial - Inferência Ascendente e Descendente
Inteligência Artificial - Inferência Ascendente e DescendenteInteligência Artificial - Inferência Ascendente e Descendente
Inteligência Artificial - Inferência Ascendente e Descendente
 
Lista duplamente encadeada
Lista duplamente encadeada Lista duplamente encadeada
Lista duplamente encadeada
 
Comparativo bubble sort e quick sort
Comparativo bubble sort e quick sortComparativo bubble sort e quick sort
Comparativo bubble sort e quick sort
 
Filas
FilasFilas
Filas
 
área de trabalho - visão geral
área de trabalho - visão geral área de trabalho - visão geral
área de trabalho - visão geral
 
Aula 23 - Excel 2010
Aula 23 - Excel 2010Aula 23 - Excel 2010
Aula 23 - Excel 2010
 
Análise estruturada de sistemas - Modelo de contexto
Análise estruturada de sistemas - Modelo de contextoAnálise estruturada de sistemas - Modelo de contexto
Análise estruturada de sistemas - Modelo de contexto
 
Estrutura de dados em Java - Pilhas
Estrutura de dados em Java - PilhasEstrutura de dados em Java - Pilhas
Estrutura de dados em Java - Pilhas
 
Introdução a Algoritmos: Conceitos Básicos
Introdução a Algoritmos: Conceitos BásicosIntrodução a Algoritmos: Conceitos Básicos
Introdução a Algoritmos: Conceitos Básicos
 
Curso de Java: Introdução a lambda e Streams
Curso de Java: Introdução a lambda e StreamsCurso de Java: Introdução a lambda e Streams
Curso de Java: Introdução a lambda e Streams
 
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)
Estrutura de Dados - Aula 15 - Pesquisa de Dados (Árvore de Pesquisa)
 
Estrutura de dados
Estrutura de dadosEstrutura de dados
Estrutura de dados
 
Estrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na práticaEstrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na prática
 
Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada
 
Linguagem de Programação Java para Iniciantes
Linguagem de Programação Java para IniciantesLinguagem de Programação Java para Iniciantes
Linguagem de Programação Java para Iniciantes
 
Funções das teclas do teclado
Funções das teclas do tecladoFunções das teclas do teclado
Funções das teclas do teclado
 

Destaque

Destaque (20)

Recursão
RecursãoRecursão
Recursão
 
Modelagem de dados usando o mer parte 1
Modelagem de dados usando o mer parte 1Modelagem de dados usando o mer parte 1
Modelagem de dados usando o mer parte 1
 
Processo e Processo de Software
Processo e Processo de SoftwareProcesso e Processo de Software
Processo e Processo de Software
 
Arquiteturas de Computadores Paralelos
Arquiteturas de Computadores ParalelosArquiteturas de Computadores Paralelos
Arquiteturas de Computadores Paralelos
 
Arquitetura de Computadores: Assembly
Arquitetura de Computadores: AssemblyArquitetura de Computadores: Assembly
Arquitetura de Computadores: Assembly
 
Sistemas
SistemasSistemas
Sistemas
 
Software
SoftwareSoftware
Software
 
Qualidade de Software - Introdução
Qualidade de Software - Introdução Qualidade de Software - Introdução
Qualidade de Software - Introdução
 
Processo de Melhoria Contínua: PDCA
Processo de Melhoria Contínua: PDCAProcesso de Melhoria Contínua: PDCA
Processo de Melhoria Contínua: PDCA
 
Lista de Prioridades
Lista de PrioridadesLista de Prioridades
Lista de Prioridades
 
Arquitetura de Computadores: Memórias Ram
Arquitetura de Computadores: Memórias RamArquitetura de Computadores: Memórias Ram
Arquitetura de Computadores: Memórias Ram
 
Arquitetura de Computadores: Memórias - Nível lógico
Arquitetura de Computadores: Memórias - Nível lógicoArquitetura de Computadores: Memórias - Nível lógico
Arquitetura de Computadores: Memórias - Nível lógico
 
Clock
ClockClock
Clock
 
Programação Orientada a Objetos parte 3
Programação Orientada a Objetos parte 3Programação Orientada a Objetos parte 3
Programação Orientada a Objetos parte 3
 
Hierarquia de níveis
Hierarquia de níveisHierarquia de níveis
Hierarquia de níveis
 
Memórias Ram
Memórias RamMemórias Ram
Memórias Ram
 
Processadores intel 8008 e 8080
Processadores intel 8008 e 8080Processadores intel 8008 e 8080
Processadores intel 8008 e 8080
 
Barramentos
Barramentos Barramentos
Barramentos
 
Glosario de qbasic liliana
Glosario de qbasic lilianaGlosario de qbasic liliana
Glosario de qbasic liliana
 
Análise assintótica
Análise assintóticaAnálise assintótica
Análise assintótica
 

Mais de Elaine Cecília Gatto

A influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaA influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaElaine Cecília Gatto
 
Inteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaInteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaElaine Cecília Gatto
 
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Elaine Cecília Gatto
 
Apresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCApresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCElaine Cecília Gatto
 
Como a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxComo a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxElaine Cecília Gatto
 
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Elaine Cecília Gatto
 
Community Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarCommunity Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarElaine Cecília Gatto
 
Classificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesClassificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesElaine Cecília Gatto
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...Elaine Cecília Gatto
 
Community Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationCommunity Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationElaine Cecília Gatto
 
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfMulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfElaine Cecília Gatto
 
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Elaine Cecília Gatto
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...Elaine Cecília Gatto
 
Pipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoPipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoElaine Cecília Gatto
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsElaine Cecília Gatto
 
Como descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoComo descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoElaine Cecília Gatto
 

Mais de Elaine Cecília Gatto (20)

A influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaA influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etaria
 
Inteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaInteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à Medicina
 
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
 
Apresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCApresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPC
 
entrevista r7.pdf
entrevista r7.pdfentrevista r7.pdf
entrevista r7.pdf
 
Como a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxComo a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptx
 
Empoderamento Feminino
Empoderamento FemininoEmpoderamento Feminino
Empoderamento Feminino
 
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
 
Community Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarCommunity Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCar
 
Classificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesClassificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de Correlações
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Community Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationCommunity Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label Classification
 
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfMulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
 
Curtinhas de sábado.pdf
Curtinhas de sábado.pdfCurtinhas de sábado.pdf
Curtinhas de sábado.pdf
 
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Pipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoPipeline desdobramento escalonamento
Pipeline desdobramento escalonamento
 
Cheat sheet Mips 32 bits
Cheat sheet Mips 32 bitsCheat sheet Mips 32 bits
Cheat sheet Mips 32 bits
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
 
Como descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoComo descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcação
 

Último

COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMCOMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMVanessaCavalcante37
 
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Mary Alvarenga
 
Descreve o conceito de função, objetos, imagens, domínio e contradomínio.
Descreve o conceito de função, objetos, imagens, domínio e contradomínio.Descreve o conceito de função, objetos, imagens, domínio e contradomínio.
Descreve o conceito de função, objetos, imagens, domínio e contradomínio.Vitor Mineiro
 
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASBCRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASBAline Santana
 
RedacoesComentadasModeloAnalisarFazer.pdf
RedacoesComentadasModeloAnalisarFazer.pdfRedacoesComentadasModeloAnalisarFazer.pdf
RedacoesComentadasModeloAnalisarFazer.pdfAlissonMiranda22
 
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptxPLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptxSamiraMiresVieiradeM
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
Rotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaRotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaronaldojacademico
 
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
activIDADES CUENTO  lobo esta  CUENTO CUARTO GRADOactivIDADES CUENTO  lobo esta  CUENTO CUARTO GRADO
activIDADES CUENTO lobo esta CUENTO CUARTO GRADOcarolinacespedes23
 
A Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesA Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesMary Alvarenga
 
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestreCIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestreElianeElika
 
Slide língua portuguesa português 8 ano.pptx
Slide língua portuguesa português 8 ano.pptxSlide língua portuguesa português 8 ano.pptx
Slide língua portuguesa português 8 ano.pptxssuserf54fa01
 
Bullying - Texto e cruzadinha
Bullying        -     Texto e cruzadinhaBullying        -     Texto e cruzadinha
Bullying - Texto e cruzadinhaMary Alvarenga
 
historia Europa Medieval_7ºano_slides_aula12.ppt
historia Europa Medieval_7ºano_slides_aula12.ppthistoria Europa Medieval_7ºano_slides_aula12.ppt
historia Europa Medieval_7ºano_slides_aula12.pptErnandesLinhares1
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
Transformações isométricas.pptx Geometria
Transformações isométricas.pptx GeometriaTransformações isométricas.pptx Geometria
Transformações isométricas.pptx Geometriajucelio7
 
VARIEDADES LINGUÍSTICAS - 1. pptx
VARIEDADES        LINGUÍSTICAS - 1. pptxVARIEDADES        LINGUÍSTICAS - 1. pptx
VARIEDADES LINGUÍSTICAS - 1. pptxMarlene Cunhada
 
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdf
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdfPortfolio_Trilha_Meio_Ambiente_e_Sociedade.pdf
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdfjanainadfsilva
 
Ácidos Nucleicos - DNA e RNA (Material Genético).pdf
Ácidos Nucleicos - DNA e RNA (Material Genético).pdfÁcidos Nucleicos - DNA e RNA (Material Genético).pdf
Ácidos Nucleicos - DNA e RNA (Material Genético).pdfJonathasAureliano1
 

Último (20)

COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMCOMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
 
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
 
Descreve o conceito de função, objetos, imagens, domínio e contradomínio.
Descreve o conceito de função, objetos, imagens, domínio e contradomínio.Descreve o conceito de função, objetos, imagens, domínio e contradomínio.
Descreve o conceito de função, objetos, imagens, domínio e contradomínio.
 
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASBCRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
 
Bullying, sai pra lá
Bullying,  sai pra láBullying,  sai pra lá
Bullying, sai pra lá
 
RedacoesComentadasModeloAnalisarFazer.pdf
RedacoesComentadasModeloAnalisarFazer.pdfRedacoesComentadasModeloAnalisarFazer.pdf
RedacoesComentadasModeloAnalisarFazer.pdf
 
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptxPLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
Rotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaRotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riqueza
 
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
activIDADES CUENTO  lobo esta  CUENTO CUARTO GRADOactivIDADES CUENTO  lobo esta  CUENTO CUARTO GRADO
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
 
A Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesA Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das Mães
 
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestreCIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
 
Slide língua portuguesa português 8 ano.pptx
Slide língua portuguesa português 8 ano.pptxSlide língua portuguesa português 8 ano.pptx
Slide língua portuguesa português 8 ano.pptx
 
Bullying - Texto e cruzadinha
Bullying        -     Texto e cruzadinhaBullying        -     Texto e cruzadinha
Bullying - Texto e cruzadinha
 
historia Europa Medieval_7ºano_slides_aula12.ppt
historia Europa Medieval_7ºano_slides_aula12.ppthistoria Europa Medieval_7ºano_slides_aula12.ppt
historia Europa Medieval_7ºano_slides_aula12.ppt
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
Transformações isométricas.pptx Geometria
Transformações isométricas.pptx GeometriaTransformações isométricas.pptx Geometria
Transformações isométricas.pptx Geometria
 
VARIEDADES LINGUÍSTICAS - 1. pptx
VARIEDADES        LINGUÍSTICAS - 1. pptxVARIEDADES        LINGUÍSTICAS - 1. pptx
VARIEDADES LINGUÍSTICAS - 1. pptx
 
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdf
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdfPortfolio_Trilha_Meio_Ambiente_e_Sociedade.pdf
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdf
 
Ácidos Nucleicos - DNA e RNA (Material Genético).pdf
Ácidos Nucleicos - DNA e RNA (Material Genético).pdfÁcidos Nucleicos - DNA e RNA (Material Genético).pdf
Ácidos Nucleicos - DNA e RNA (Material Genético).pdf
 

Pilhas

  • 1. Representação de Pilhas com a Estrutura Lista e Operações. Departamento de Engenharia de Computação Algoritmos e Estruturas de Dados 07/12/2016 1
  • 3. INTRODUÇÃO É uma lista linear. É uma lista LIFO – last in / first out – último que entra primeiro que sai. É uma lista dinâmica: pode aumentar ou diminuir durante a sua existência. Operações de inserção e remoção são realizadas na mesma extremidade. 07/12/2016 3 TOPO BASE
  • 4. Exemplos Pilha de pratos Porta-guardanapos de papel Controle de sequencias de chamadas de rotinas Sintaxe de expressões aritméticas Etc. 07/12/2016 4
  • 5. Operações  Top: retorna o elemento que está no topo da pilha. Não altera o estado da Pilha.  Push: insere um novo elemento no topo da pilha. Altera o estado da Pilha.  Pop: remove um elemento do topo da pilha. Altera o estado da Pilha.07/12/2016 5 Xn ... X6 X5 X4 X3 X2 X1 PUSH (P, x) POP (P, x) PILHA (P) Topo Base
  • 6. Operações  Init: inicializa a pilha no estado vazia (NIL ou NULL). Define um estado inicial.  IsEmpty: verifica se a pilha está vazia. Do tipo booleano: retorna TRUE somente se estiver vazia.  IsFull: verifica se a pilha está cheia. Do tipo booleano: retorna TRUE somente quando não há mais espaço de armazenamento07/12/2016 6 Xn ... X6 X5 X4 X3 X2 X1 PUSH (P, x) POP (P, x) PILHA (P) Topo Base
  • 7. Operações 07/12/2016 7 1 PUSH (P, 1) PILHA (P) Topo 20 1 Topo PUSH (P, 20) 500 20 1 Topo PUSH (P, 500) 156 500 20 1 Topo PUSH (P, 156) 349 156 500 20 1 Topo PUSH (P, 349)
  • 8. Operações 07/12/2016 8 349 156 500 20 1 POP (P, 349) PILHA (P) Topo 156 500 20 1 Topo POP (P, 156) 500 20 1 Topo POP (P, 500) 20 1 Topo POP (P, 20) 1 Topo POP (P, 1)
  • 11. Implementação: Definição da Pilha type tipo_dado = integer; tipo_pilha = ^tipo_no; tipo_no = record dado: tipo_dado; prox: tipo_pilha; end; 07/12/2016 11
  • 12. Implementação: Criação da Pilha Procedure Cria_Pilha(var p:tipo_pilha); begin p := Nil; writeln('Lista Criada com Sucesso!'); end; 07/12/2016 12
  • 13. Implementação: IsEmpty Function Vazia(p: tipo_pilha): boolean; begin Vazia := (p=Nil); end; 07/12/2016 13
  • 14. Implementação: PUSH procedure Empilha(var p: tipo_pilha; x: tipo_dado); var aux : tipo_pilha; Begin new(aux); aux^.dado := x; aux^.prox := p; p := aux; end;07/12/2016 14
  • 15. Implementação: POP function Desempilha(var p: tipo_pilha; var x : tipo_dado):boolean; var aux:tipo_pilha; begin if Vazia(p) Then Desempilha := false else begin Desempilha := True; x := p^.dado; aux := p; p := p^.prox; dispose(aux); end; end; 07/12/2016 15
  • 16. Implementação: TOPO Function Topo(p: tipo_pilha): integer; Begin Topo := p^.dado; end; 07/12/2016 16
  • 17. Implementação: Impressão da Pilha procedure imprimir(); begin if Vazia(p) Then writeln('Pilha Vazia') else begin writeln(' IMPRIMINDO TODO O CONTEÚDO DA PILHA '); aux:=p; while(aux <> nil)do //imprimindo lista begin write(' dado : '); writeln(aux^.dado); aux := aux^.prox; end; //while end; //if end; 07/12/2016 17
  • 18. Atividade em Sala de Aula 07/12/2016 18
  • 19. Referências 1. Deitel, H. M.; Deitel, P. J. Java: Como Programar. Tradução: Edson Furmankiewicz; Revisão Técnica: Fábio Luis Picelli Lucchini. 6.ª Edição. São Paulo: Pearson Prentice Hall, 2005. Cap. 17, p. 607 – 644. 2. Deitel, H. M.; Deitel, P. J. C: Como Programar. Tradução: Daniel Vieira; Revisão Técnica: César Caetano. 6.ª Edição. São Paulo: Pearson Prentice Hall, 2011. Cap. 12, p. 379 – 413. 3. Deitel, H. M.; Deitel, P. J. C++: Como Programar. Tradução: Edson Furmankiewicz; Revisão Técnica: Fábio Luis Picelli Lucchini. 5.ª Edição. São Paulo: Pearson Prentice Hall, 2006. Cap. 21, p. 789 – 845. 4. Schildt, H.; Skrien, D. Programação com Java: Uma Introdução Abrangente. Tradução: Aldir José Coelho Cêrrea da Silva. Revisão Técnica: Maria Lúcia Blanck Lisbôa. Porto Alegre: AMGH, 2013. Cap. 25, p. 911 – 966 07/12/2016 19
  • 20. Referências 5. Ziviani, N. Projeto de Algoritmos com Implementações em Pascal e C. 3.ª ed. rev. e amp. São Paulo: Cengage Learning, 2015. Cap. 3, p. 69 – 100. 6. Forouzan, B., Mosharraf, F. Fundamentos da Ciência da Computação. Tradução: Solange Aparecida Visconti. Revisão Técnica: Ronaldo A. L. Gonçalves. São Paulo: Cengage Learning, 2011. Cap. 11, p. 257 – 278. 7. Pereira, S. L. Estruturas de Dados Fundamentais: Conceitos e Aplicações. São Paulo: Érica, 1996. 8. Ascencio, A. F. G.; Araújo, G. S. Estruturas de Dados: Algoritmos, Análise da Complexidade e Implementações em Java e C/C++. São Paulo: Pearson Prentice Hall, 2010. Cap. 4, p.183 – 200. 07/12/2016 20