SlideShare ist ein Scribd-Unternehmen logo
1 von 10
MINICURSO DE 
ESTRUTURA DE DADOS 
Aula 02 – Pilhas e seus 
algoritmos
CONTEÚDO DA AULA 
Conceitos •Pilhas 
•Stack-empty 
•Push 
•Pop 
Algoritmos 
Exercícios •Operações com pilhas
CONCEITOS 
Pilhas 
•Como passado na aula anterior pilha é 
uma variação de deque. 
• A pilha implementa a seguinte norma: 
O último a entrar é o primeiro a sair, 
ou LIFO (last in first out).
CARACTERÍSTICAS DAS PILHAS 
Formas de 
armazenamento 
• Em vetores 
• Ponteiros ( um ponteiro indica o topo da pilha ) 
Operações 
básicas 
• Verificar se lista está vazia – STACK-EMPTY(S) 
• Retornar o índice do topo – TOPO(S) 
• Inserir um elemento(empilhar) – PUSH(S,x) 
• Remover um elemento(desempilhar) – POP(S) 
Operações 
inválidas 
• Inserção em pilha cheia – OVERFLOW 
• Remoção em pilha vazia – UNDERFLOW
EXEMPLO DE OPERAÇÃO EM 
PILHAS 
Índice da 
pilha S 
5 
4 
3 
2 
1 
Inicial: 
pilha vazia 
- 
- 
- 
- 
- 
PUSH(S,a) 
- 
- 
- 
- 
A 
PUSH(S,b) 
- 
- 
- 
B 
A 
POP(S) 
- 
- 
- 
- 
A 
PUSH(S,c) 
- 
- 
- 
C 
A 
POP(S) 
- 
- 
- 
- 
A 
POP(S) 
- 
- 
- 
- 
- 
POP(S) 
- 
- 
- 
- 
- 
A figura acima ilustra algumas operações na pilha S, utilizando os algoritmos de 
empilhamento(PUSH) e desempilhamento (POP). 
Observe que na última operação ocorre uma erro de UNDERFLOW, onde a pilha já se 
encontra vazia e mesmo assim é dado o comando de desempilhar.
O ALGORITMO STACK-EMPTY(S) 
• O algoritmo STACK-EMPTY(S) serve para consultar se a 
lista está vazia visando evitar problemas de UNDERFLOW. Conceito 
• STACK-EMPTY(S) 
• If topo[S] = 0 
• then return TRUE 
• else return FALSE 
Código
O ALGORITMO PUSH(S,X) 
• O algoritmo PUSH(S, x) realiza o 
procedimento de empilhamento, ou seja, 
insere um elemento na estrutura. 
Conceito 
• PUSH(S,x) 
• topo[S]  topo[S + 1] 
• S[topo[S]]  x 
Código
O ALGORITMO POP(S) 
•O algoritmo POP(S) realiza o procedimento de desempilhamento, ou 
seja, remove um elemento na estrutura. Conceito 
•POP(S) 
• if STACK-EMPTY(S) 
• then error “underflow” 
• else topo[S]  topo[S - 1] 
• return S[topo[S] + 1 
Código
EXERCÍCIO 
Utilizando o modelo de pilha do exemplo passado, ilustre o resultado 
de cada operação na sequência PUSH(S,4), PUSH(S,1), PUSH(S,3), 
POP(S), PUSH(S,8), POP(S) sobre uma pilha S inicialmente vazia 
armazenada num arranjo[1 .. 5].
DUVIDAS? Aula 02 – Pilhas

Weitere ähnliche Inhalte

Was ist angesagt? (20)

Pilha e Fila Dinamica
Pilha e Fila DinamicaPilha e Fila Dinamica
Pilha e Fila Dinamica
 
Estrutura de dados em Java - Pilhas
Estrutura de dados em Java - PilhasEstrutura de dados em Java - Pilhas
Estrutura de dados em Java - Pilhas
 
Aula14
Aula14Aula14
Aula14
 
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
 
Estrutura de dados - Filas
Estrutura de dados - FilasEstrutura de dados - Filas
Estrutura de dados - Filas
 
Java 8 - New Features
Java 8 - New FeaturesJava 8 - New Features
Java 8 - New Features
 
Estrutura de Dados - Listas Encadeadas
Estrutura de Dados - Listas EncadeadasEstrutura de Dados - Listas Encadeadas
Estrutura de Dados - Listas Encadeadas
 
Programação funcional
Programação funcionalProgramação funcional
Programação funcional
 
Estrutura de dados em Java - Filas
Estrutura de dados em Java - FilasEstrutura de dados em Java - Filas
Estrutura de dados em Java - Filas
 
Programação funcional com abap
Programação funcional com abapProgramação funcional com abap
Programação funcional com abap
 
Programação funcional no dia a dia
Programação funcional no dia a diaProgramação funcional no dia a dia
Programação funcional no dia a dia
 
Estrutura de Dados - PILHAS
Estrutura de Dados - PILHASEstrutura de Dados - PILHAS
Estrutura de Dados - PILHAS
 
Filas encadeadas
Filas encadeadasFilas encadeadas
Filas encadeadas
 
Pilhas encadeadas
Pilhas encadeadasPilhas encadeadas
Pilhas encadeadas
 
Pilhas e filas
Pilhas e filasPilhas e filas
Pilhas e filas
 
Pilha
PilhaPilha
Pilha
 
Introdução à linguagem c
Introdução à linguagem cIntrodução à linguagem c
Introdução à linguagem c
 
Apostila rpira
Apostila rpiraApostila rpira
Apostila rpira
 
Programação funcional
Programação funcionalProgramação funcional
Programação funcional
 
Lp m2(parte4)
Lp m2(parte4)Lp m2(parte4)
Lp m2(parte4)
 

Andere mochten auch

Aula01 - estrutura de dados
Aula01 - estrutura de dadosAula01 - estrutura de dados
Aula01 - estrutura de dadosAbner Lima
 
[Curso Java Basico] Exercicios Aulas 25 a 27
[Curso Java Basico] Exercicios Aulas 25 a 27[Curso Java Basico] Exercicios Aulas 25 a 27
[Curso Java Basico] Exercicios Aulas 25 a 27Loiane Groner
 
Estrutura de Dados Aula 05 - Filas Estáticas
Estrutura de Dados  Aula 05 - Filas EstáticasEstrutura de Dados  Aula 05 - Filas Estáticas
Estrutura de Dados Aula 05 - Filas EstáticasLeinylson Fontinele
 
Estrutura de Dados Aula 07 - Alocação dinâmica de memória
Estrutura de Dados Aula 07 - Alocação dinâmica de memóriaEstrutura de Dados Aula 07 - Alocação dinâmica de memória
Estrutura de Dados Aula 07 - Alocação dinâmica de memóriaLeinylson Fontinele
 
Microensino de estrutura de dados
Microensino de estrutura de dadosMicroensino de estrutura de dados
Microensino de estrutura de dadosAbner Lima
 

Andere mochten auch (10)

Estrutura de dados
Estrutura de dadosEstrutura de dados
Estrutura de dados
 
Pged 06
Pged 06Pged 06
Pged 06
 
Ed1
Ed1Ed1
Ed1
 
Aula01 - estrutura de dados
Aula01 - estrutura de dadosAula01 - estrutura de dados
Aula01 - estrutura de dados
 
[Curso Java Basico] Exercicios Aulas 25 a 27
[Curso Java Basico] Exercicios Aulas 25 a 27[Curso Java Basico] Exercicios Aulas 25 a 27
[Curso Java Basico] Exercicios Aulas 25 a 27
 
Estrutura de Dados Aula 05 - Filas Estáticas
Estrutura de Dados  Aula 05 - Filas EstáticasEstrutura de Dados  Aula 05 - Filas Estáticas
Estrutura de Dados Aula 05 - Filas Estáticas
 
Teoria das Filas
Teoria das FilasTeoria das Filas
Teoria das Filas
 
Estrutura de Dados Aula 07 - Alocação dinâmica de memória
Estrutura de Dados Aula 07 - Alocação dinâmica de memóriaEstrutura de Dados Aula 07 - Alocação dinâmica de memória
Estrutura de Dados Aula 07 - Alocação dinâmica de memória
 
Estruturas de dados
Estruturas de dadosEstruturas de dados
Estruturas de dados
 
Microensino de estrutura de dados
Microensino de estrutura de dadosMicroensino de estrutura de dados
Microensino de estrutura de dados
 

Ähnlich wie Aula02 Pilhas

Ähnlich wie Aula02 Pilhas (7)

6 alocacao sequencial - pilhas
6   alocacao sequencial - pilhas6   alocacao sequencial - pilhas
6 alocacao sequencial - pilhas
 
Aula 8
Aula 8Aula 8
Aula 8
 
Estrutura de Dados - Aula 08
Estrutura de Dados - Aula 08Estrutura de Dados - Aula 08
Estrutura de Dados - Aula 08
 
Pged 05
Pged 05Pged 05
Pged 05
 
Slides pilhas e_filas
Slides  pilhas e_filasSlides  pilhas e_filas
Slides pilhas e_filas
 
Estrutura de Dados e Algoritmos com Java #13-18: Pilhas (Stack)
Estrutura de Dados e Algoritmos com Java #13-18: Pilhas (Stack)Estrutura de Dados e Algoritmos com Java #13-18: Pilhas (Stack)
Estrutura de Dados e Algoritmos com Java #13-18: Pilhas (Stack)
 
Skip List
Skip ListSkip List
Skip List
 

Kürzlich hochgeladen

Prática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISPrática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISVitor Vieira Vasconcelos
 
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxSlides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxLuizHenriquedeAlmeid6
 
A experiência amorosa e a reflexão sobre o Amor.pptx
A experiência amorosa e a reflexão sobre o Amor.pptxA experiência amorosa e a reflexão sobre o Amor.pptx
A experiência amorosa e a reflexão sobre o Amor.pptxfabiolalopesmartins1
 
ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024Jeanoliveira597523
 
Bullying - Texto e cruzadinha
Bullying        -     Texto e cruzadinhaBullying        -     Texto e cruzadinha
Bullying - Texto e cruzadinhaMary Alvarenga
 
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxOsnilReis1
 
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologiaAula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologiaaulasgege
 
Investimentos. EDUCAÇÃO FINANCEIRA 8º ANO
Investimentos. EDUCAÇÃO FINANCEIRA 8º ANOInvestimentos. EDUCAÇÃO FINANCEIRA 8º ANO
Investimentos. EDUCAÇÃO FINANCEIRA 8º ANOMarcosViniciusLemesL
 
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024HORA DO CONTO4_BECRE D. CARLOS I_2023_2024
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024Sandra Pratas
 
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
 
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasCenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasRosalina Simão Nunes
 
02. Informática - Windows 10 apostila completa.pdf
02. Informática - Windows 10 apostila completa.pdf02. Informática - Windows 10 apostila completa.pdf
02. Informática - Windows 10 apostila completa.pdfJorge Andrade
 
Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.keislayyovera123
 
Regência Nominal e Verbal português .pdf
Regência Nominal e Verbal português .pdfRegência Nominal e Verbal português .pdf
Regência Nominal e Verbal português .pdfmirandadudu08
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfAdrianaCunha84
 
FCEE - Diretrizes - Autismo.pdf para imprimir
FCEE - Diretrizes - Autismo.pdf para imprimirFCEE - Diretrizes - Autismo.pdf para imprimir
FCEE - Diretrizes - Autismo.pdf para imprimirIedaGoethe
 
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptxSlides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptxLuizHenriquedeAlmeid6
 
Educação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPEducação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPanandatss1
 
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveAula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveaulasgege
 

Kürzlich hochgeladen (20)

Prática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISPrática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGIS
 
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxSlides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
 
A experiência amorosa e a reflexão sobre o Amor.pptx
A experiência amorosa e a reflexão sobre o Amor.pptxA experiência amorosa e a reflexão sobre o Amor.pptx
A experiência amorosa e a reflexão sobre o Amor.pptx
 
ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024
 
Bullying - Texto e cruzadinha
Bullying        -     Texto e cruzadinhaBullying        -     Texto e cruzadinha
Bullying - Texto e cruzadinha
 
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA -
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA      -XI OLIMPÍADAS DA LÍNGUA PORTUGUESA      -
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA -
 
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
 
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologiaAula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
 
Investimentos. EDUCAÇÃO FINANCEIRA 8º ANO
Investimentos. EDUCAÇÃO FINANCEIRA 8º ANOInvestimentos. EDUCAÇÃO FINANCEIRA 8º ANO
Investimentos. EDUCAÇÃO FINANCEIRA 8º ANO
 
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024HORA DO CONTO4_BECRE D. CARLOS I_2023_2024
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024
 
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
 
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasCenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
 
02. Informática - Windows 10 apostila completa.pdf
02. Informática - Windows 10 apostila completa.pdf02. Informática - Windows 10 apostila completa.pdf
02. Informática - Windows 10 apostila completa.pdf
 
Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.
 
Regência Nominal e Verbal português .pdf
Regência Nominal e Verbal português .pdfRegência Nominal e Verbal português .pdf
Regência Nominal e Verbal português .pdf
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdf
 
FCEE - Diretrizes - Autismo.pdf para imprimir
FCEE - Diretrizes - Autismo.pdf para imprimirFCEE - Diretrizes - Autismo.pdf para imprimir
FCEE - Diretrizes - Autismo.pdf para imprimir
 
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptxSlides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
 
Educação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPEducação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SP
 
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveAula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
 

Aula02 Pilhas

  • 1. MINICURSO DE ESTRUTURA DE DADOS Aula 02 – Pilhas e seus algoritmos
  • 2. CONTEÚDO DA AULA Conceitos •Pilhas •Stack-empty •Push •Pop Algoritmos Exercícios •Operações com pilhas
  • 3. CONCEITOS Pilhas •Como passado na aula anterior pilha é uma variação de deque. • A pilha implementa a seguinte norma: O último a entrar é o primeiro a sair, ou LIFO (last in first out).
  • 4. CARACTERÍSTICAS DAS PILHAS Formas de armazenamento • Em vetores • Ponteiros ( um ponteiro indica o topo da pilha ) Operações básicas • Verificar se lista está vazia – STACK-EMPTY(S) • Retornar o índice do topo – TOPO(S) • Inserir um elemento(empilhar) – PUSH(S,x) • Remover um elemento(desempilhar) – POP(S) Operações inválidas • Inserção em pilha cheia – OVERFLOW • Remoção em pilha vazia – UNDERFLOW
  • 5. EXEMPLO DE OPERAÇÃO EM PILHAS Índice da pilha S 5 4 3 2 1 Inicial: pilha vazia - - - - - PUSH(S,a) - - - - A PUSH(S,b) - - - B A POP(S) - - - - A PUSH(S,c) - - - C A POP(S) - - - - A POP(S) - - - - - POP(S) - - - - - A figura acima ilustra algumas operações na pilha S, utilizando os algoritmos de empilhamento(PUSH) e desempilhamento (POP). Observe que na última operação ocorre uma erro de UNDERFLOW, onde a pilha já se encontra vazia e mesmo assim é dado o comando de desempilhar.
  • 6. O ALGORITMO STACK-EMPTY(S) • O algoritmo STACK-EMPTY(S) serve para consultar se a lista está vazia visando evitar problemas de UNDERFLOW. Conceito • STACK-EMPTY(S) • If topo[S] = 0 • then return TRUE • else return FALSE Código
  • 7. O ALGORITMO PUSH(S,X) • O algoritmo PUSH(S, x) realiza o procedimento de empilhamento, ou seja, insere um elemento na estrutura. Conceito • PUSH(S,x) • topo[S]  topo[S + 1] • S[topo[S]]  x Código
  • 8. O ALGORITMO POP(S) •O algoritmo POP(S) realiza o procedimento de desempilhamento, ou seja, remove um elemento na estrutura. Conceito •POP(S) • if STACK-EMPTY(S) • then error “underflow” • else topo[S]  topo[S - 1] • return S[topo[S] + 1 Código
  • 9. EXERCÍCIO Utilizando o modelo de pilha do exemplo passado, ilustre o resultado de cada operação na sequência PUSH(S,4), PUSH(S,1), PUSH(S,3), POP(S), PUSH(S,8), POP(S) sobre uma pilha S inicialmente vazia armazenada num arranjo[1 .. 5].
  • 10. DUVIDAS? Aula 02 – Pilhas