SlideShare una empresa de Scribd logo
1 de 17
Descargar para leer sin conexión
2.5 Pilas (stack)

   Apoyo SSD5
Pilas
Una pila es una estructura de datos lineal
que brinda acceso sólo al último elemento
agregado.
En una pila, los elementos sólo pueden
ser agregados y eliminados del final de
una secuencia.
Esto lleva a la política de inserción y
eliminación de elementos conocida como
quot;Último en Entrar, Primero en Salirquot;.
                 Mtl Lourdes Cahuich         2
Pilas
Dicho de otra forma, el siguiente elemento
que puede ser eliminado de una pila es
siempre el elemento que fue agregado
más recientemente en la pila.
Siempre podemos agregar más elementos
a la pila, pero cada vez que lo hacemos, el
elemento agregado más recientemente se
convierte en el elemento que puede ser
eliminado primero.

                 Mtl Lourdes Cahuich      3
Mtl Lourdes Cahuich   4
Pilas
Con este modelo en mente, pasemos a
añadir unos cuantos elementos a una pila
que inicialmente se encuentra vacía.
Primero añadimos (generalmente se le
conoce como quot;empujarquot; (pushing) a la fila
un elemento con el valor de 1.



                Mtl Lourdes Cahuich         5
Mtl Lourdes Cahuich   6
Pilas
El elemento sombreado en gris está ahora
en la parte más alta de la pila.
Al añadir el segundo elemento se esconde
el primer elemento debido a que el
segundo elemento es ahora el único
elemento que puede ser eliminado.
Además, es el único elemento de la pila a
cuyo valor podemos acceder.
                Mtl Lourdes Cahuich     7
Pilas
Esta es una propiedad importante de la
estructura de datos de pilas que difiere de
los vectores y los deques.
En una pila, tenemos acceso al número de
elementos almacenados en la estructura
de datos, pero no tenemos acceso a todos
los valores de los elementos


                 Mtl Lourdes Cahuich      8
Pilas
Si fuéramos a eliminar un elemento de la pila
(por lo general se le conoce como quot;poppingquot;),
nuestra pila se vería como en la figura de
enmedio
Hemos examinado cómo operan las pilas y
hemos visto las operaciones principales
asociadas con las pilas.
En resumen, quot;empujandoquot; o quot;pushingquot; agrega
un elemento en la parte más alta de la pila, y
quot;poppingquot; elimina el elemento que se encuentra
más arriba de la fila.
                  Mtl Lourdes Cahuich            9
Aplicaciones de Pilas
Las pilas son una estructura importante en
la Ciencia Computacional, y tienen
muchas aplicaciones diferentes.
Estas aplicaciones varían de tareas
sencillas como invertir los caracteres en
una cadena, a tareas más complejas
como la evaluación de expresiones
aritméticas o la navegación de laberintos.

                Mtl Lourdes Cahuich      10
Aplicaciones de Pilas
Es importante tener un entendimiento
sólido del concepto de una pila, debido a
que más adelante encontraremos muchos
usos de pilas en el contexto de otras
estructuras de datos y algoritmos.




                Mtl Lourdes Cahuich     11
Cómo Usar el Adaptador stack de
              STL
 El adaptador stack de STL ofrece una
 interfaz adecuada para ser usada como
 una pila.
 A continuación muestra todas las
 funciones miembro del adaptador stack




                Mtl Lourdes Cahuich      12
#include <iostream>
#include <string>
#include <cstdlib>
#include <stack>
using namespace std;
int main(int argc, char* argv[]) {
    stack<int> s;
    // push and pop
    s.push(1);
    s.pop();
    // top
    s.push(10);
    s.push(11);
    cout << s.top() << endl;
    // size and empty
    cout << s.size() << endl;
    cout << s.empty() << endl;
    return EXIT_SUCCESS;
}
                      Mtl Lourdes Cahuich   13
Adaptador stack
Solamente existen seis funciones
miembro en la interfaz del adaptador
stack.
Los métodos push y pop insertan y
eliminan elementos de una pila,
respectivamente, y el método top regresa
una referencia a los datos almacenados
arriba de la pila.

                Mtl Lourdes Cahuich    14
Adaptador stack
Al igual que el adaptador queue, el
método size regresa el número de
elementos almacenados en una pila y el
método empty despliega true si una fila
está vacía y false si la pila no está
vacía.
Para usar el adaptador stack de STL en
un programa, un programador debe incluir
la biblioteca <stack>.

                Mtl Lourdes Cahuich    15
Adaptador stack
Este listado despliega las líneas de un
archivo texto en orden inverso.
Una pila provee una estructura de datos
natural para resolver este problema.




                Mtl Lourdes Cahuich       16
// open file specified by command-line argument
ifstream inf(argv[1]);
if ( !inf ) {
    cerr << quot;cannot open quot; << filename << quot; for inputquot; <<
  endl;
   return EXIT_FAILURE;
}
stack<string> s;
string line;
// read file line by line
while (getline(inf, line)) {
    s.push(line);
}
inf.close();
// print lines in reverse
while (!s.empty()) {
    cout << s.top() << endl;
    s.pop();
}
                        Mtl Lourdes Cahuich                 17

Más contenido relacionado

La actualidad más candente

Listas pilas colas
Listas pilas colasListas pilas colas
Listas pilas colasxpiner
 
Colas en programacion
Colas en programacionColas en programacion
Colas en programacionLuis Igoodbad
 
Lissette pimentel 11 1149 --- listas, pilas y colas
Lissette pimentel 11 1149 --- listas, pilas y colasLissette pimentel 11 1149 --- listas, pilas y colas
Lissette pimentel 11 1149 --- listas, pilas y colasLissette I. Pimentel S
 
Estructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colasEstructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colasHuascar Génere
 
Estructura de datos. listas, pilas y colas
Estructura de datos. listas, pilas y colasEstructura de datos. listas, pilas y colas
Estructura de datos. listas, pilas y colasIARINAIA
 
Estructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasEstructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasElias Peña
 
Estructuras dinámicas
Estructuras dinámicasEstructuras dinámicas
Estructuras dinámicasPatriciaU
 
Listas, pilas y colas richard ramos 09-1130
Listas, pilas y colas   richard ramos 09-1130Listas, pilas y colas   richard ramos 09-1130
Listas, pilas y colas richard ramos 09-1130reyarturo16
 
Diapositiva de l estructura de datos
Diapositiva de l estructura de datosDiapositiva de l estructura de datos
Diapositiva de l estructura de datosmariajuly
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colasknowallrpa
 
Unidad 3 estructuras lineales estaticas y dinamicas
Unidad 3 estructuras lineales estaticas y dinamicasUnidad 3 estructuras lineales estaticas y dinamicas
Unidad 3 estructuras lineales estaticas y dinamicasrehoscript
 

La actualidad más candente (19)

Pilas, colas, y listas estructura de datos
Pilas, colas, y listas estructura de datosPilas, colas, y listas estructura de datos
Pilas, colas, y listas estructura de datos
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Listas pilas colas
Listas pilas colasListas pilas colas
Listas pilas colas
 
Listas y Pilas
Listas y PilasListas y Pilas
Listas y Pilas
 
Colas en programacion
Colas en programacionColas en programacion
Colas en programacion
 
Lissette pimentel 11 1149 --- listas, pilas y colas
Lissette pimentel 11 1149 --- listas, pilas y colasLissette pimentel 11 1149 --- listas, pilas y colas
Lissette pimentel 11 1149 --- listas, pilas y colas
 
Estructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colasEstructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colas
 
Pilas y Colas
Pilas y ColasPilas y Colas
Pilas y Colas
 
Presentacion pilas lista y colas
Presentacion pilas lista y colas  Presentacion pilas lista y colas
Presentacion pilas lista y colas
 
Pilas y colas
Pilas y colasPilas y colas
Pilas y colas
 
Estructura de datos. listas, pilas y colas
Estructura de datos. listas, pilas y colasEstructura de datos. listas, pilas y colas
Estructura de datos. listas, pilas y colas
 
Estructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasEstructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colas
 
Fila,pila y cola ..
Fila,pila y cola ..Fila,pila y cola ..
Fila,pila y cola ..
 
Listas,pilas&colas yorka
Listas,pilas&colas yorkaListas,pilas&colas yorka
Listas,pilas&colas yorka
 
Estructuras dinámicas
Estructuras dinámicasEstructuras dinámicas
Estructuras dinámicas
 
Listas, pilas y colas richard ramos 09-1130
Listas, pilas y colas   richard ramos 09-1130Listas, pilas y colas   richard ramos 09-1130
Listas, pilas y colas richard ramos 09-1130
 
Diapositiva de l estructura de datos
Diapositiva de l estructura de datosDiapositiva de l estructura de datos
Diapositiva de l estructura de datos
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Unidad 3 estructuras lineales estaticas y dinamicas
Unidad 3 estructuras lineales estaticas y dinamicasUnidad 3 estructuras lineales estaticas y dinamicas
Unidad 3 estructuras lineales estaticas y dinamicas
 

Similar a 10 Pilas

8 Listas Encadenadas 2a Parte
8 Listas Encadenadas 2a Parte8 Listas Encadenadas 2a Parte
8 Listas Encadenadas 2a ParteUVM
 
19 Contenedores De Stl Basados En Arboles
19 Contenedores De Stl Basados En Arboles19 Contenedores De Stl Basados En Arboles
19 Contenedores De Stl Basados En ArbolesUVM
 
Tad lista, pilas y colas
Tad lista, pilas y colasTad lista, pilas y colas
Tad lista, pilas y colaslabarra90
 
TRABAJO JOSE GABRIEL LUCENA PILAS PDF1233
TRABAJO JOSE GABRIEL LUCENA PILAS PDF1233TRABAJO JOSE GABRIEL LUCENA PILAS PDF1233
TRABAJO JOSE GABRIEL LUCENA PILAS PDF1233GABRIEL64287
 
Sesion n°1 estructura de datos
Sesion n°1 estructura de datosSesion n°1 estructura de datos
Sesion n°1 estructura de datosJosé Braganza
 
7 Stl Y Los Contenedores Basicos
7 Stl Y Los Contenedores Basicos7 Stl Y Los Contenedores Basicos
7 Stl Y Los Contenedores BasicosUVM
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colasJose R. Trejo
 
Curso-PROPE-PyED-5-Pilas-Colas-programacion
Curso-PROPE-PyED-5-Pilas-Colas-programacionCurso-PROPE-PyED-5-Pilas-Colas-programacion
Curso-PROPE-PyED-5-Pilas-Colas-programacionLUISFERNANDOMORENOSO2
 
Java pilas (Stacks) y colas (Queues)
Java pilas (Stacks) y colas (Queues)Java pilas (Stacks) y colas (Queues)
Java pilas (Stacks) y colas (Queues)Juan Astudillo
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrbviela6
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrbviela6
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrbviela6
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrbviela6
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datoscharlezgt
 

Similar a 10 Pilas (20)

8 Listas Encadenadas 2a Parte
8 Listas Encadenadas 2a Parte8 Listas Encadenadas 2a Parte
8 Listas Encadenadas 2a Parte
 
19 Contenedores De Stl Basados En Arboles
19 Contenedores De Stl Basados En Arboles19 Contenedores De Stl Basados En Arboles
19 Contenedores De Stl Basados En Arboles
 
Listas Pilas Colas
Listas Pilas ColasListas Pilas Colas
Listas Pilas Colas
 
Tad lista, pilas y colas
Tad lista, pilas y colasTad lista, pilas y colas
Tad lista, pilas y colas
 
TRABAJO JOSE GABRIEL LUCENA PILAS PDF1233
TRABAJO JOSE GABRIEL LUCENA PILAS PDF1233TRABAJO JOSE GABRIEL LUCENA PILAS PDF1233
TRABAJO JOSE GABRIEL LUCENA PILAS PDF1233
 
Sesion n°1 estructura de datos
Sesion n°1 estructura de datosSesion n°1 estructura de datos
Sesion n°1 estructura de datos
 
7 Stl Y Los Contenedores Basicos
7 Stl Y Los Contenedores Basicos7 Stl Y Los Contenedores Basicos
7 Stl Y Los Contenedores Basicos
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Curso-PROPE-PyED-5-Pilas-Colas-programacion
Curso-PROPE-PyED-5-Pilas-Colas-programacionCurso-PROPE-PyED-5-Pilas-Colas-programacion
Curso-PROPE-PyED-5-Pilas-Colas-programacion
 
Java pilas (Stacks) y colas (Queues)
Java pilas (Stacks) y colas (Queues)Java pilas (Stacks) y colas (Queues)
Java pilas (Stacks) y colas (Queues)
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrb
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrb
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrb
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrb
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datos
 
Colecciones en Scala
Colecciones en ScalaColecciones en Scala
Colecciones en Scala
 
secme-19001 (1) (1) (1).pdf
secme-19001 (1) (1) (1).pdfsecme-19001 (1) (1) (1).pdf
secme-19001 (1) (1) (1).pdf
 
Unidad iii pilas y colas
Unidad iii pilas y colasUnidad iii pilas y colas
Unidad iii pilas y colas
 
Pilas En C++
Pilas En C++Pilas En C++
Pilas En C++
 
Pilas Colas
Pilas ColasPilas Colas
Pilas Colas
 

Más de UVM

Tiempo compartido en programación
Tiempo compartido en programaciónTiempo compartido en programación
Tiempo compartido en programaciónUVM
 
Portafolio de evidencias del curso Programación Avanzada
Portafolio de evidencias del curso Programación AvanzadaPortafolio de evidencias del curso Programación Avanzada
Portafolio de evidencias del curso Programación AvanzadaUVM
 
Eficiencia en uso tiempo
Eficiencia en uso  tiempoEficiencia en uso  tiempo
Eficiencia en uso tiempoUVM
 
Administración de memoria arreglos dinamicos
Administración de memoria arreglos dinamicosAdministración de memoria arreglos dinamicos
Administración de memoria arreglos dinamicosUVM
 
Practica de arreglos
Practica de arreglosPractica de arreglos
Practica de arreglosUVM
 
Otra introducción a apuntadores
Otra introducción a apuntadoresOtra introducción a apuntadores
Otra introducción a apuntadoresUVM
 
Ejemplo de solución de práctica funciones stl
Ejemplo de solución de práctica funciones stlEjemplo de solución de práctica funciones stl
Ejemplo de solución de práctica funciones stlUVM
 
Breve repaso de apuntadores
Breve repaso de apuntadoresBreve repaso de apuntadores
Breve repaso de apuntadoresUVM
 
Arreglos conceptos básicos
Arreglos conceptos básicosArreglos conceptos básicos
Arreglos conceptos básicosUVM
 
Resolución práctica de tipos de datos
Resolución práctica de tipos de datosResolución práctica de tipos de datos
Resolución práctica de tipos de datosUVM
 
Resumen de funciones
Resumen de funcionesResumen de funciones
Resumen de funcionesUVM
 
Biblioteca estándar de funciones
Biblioteca estándar de funcionesBiblioteca estándar de funciones
Biblioteca estándar de funcionesUVM
 
Manejo de bits
Manejo de bitsManejo de bits
Manejo de bitsUVM
 
Aclaración de dudas 4 de septiembre
Aclaración de dudas 4 de septiembreAclaración de dudas 4 de septiembre
Aclaración de dudas 4 de septiembreUVM
 
Aclaraciones varias a códigos entregados en sesión 3
Aclaraciones varias a códigos entregados en sesión 3Aclaraciones varias a códigos entregados en sesión 3
Aclaraciones varias a códigos entregados en sesión 3UVM
 
Funciones definidas por el usuario
Funciones definidas por el usuarioFunciones definidas por el usuario
Funciones definidas por el usuarioUVM
 
Función main()
Función main()Función main()
Función main()UVM
 
Depuración de un programa en c++
Depuración de un programa en c++Depuración de un programa en c++
Depuración de un programa en c++UVM
 
Algunas dudas de la sesión 28 agosto
Algunas dudas de la sesión 28 agostoAlgunas dudas de la sesión 28 agosto
Algunas dudas de la sesión 28 agostoUVM
 
Estructura programa c++
Estructura programa c++Estructura programa c++
Estructura programa c++UVM
 

Más de UVM (20)

Tiempo compartido en programación
Tiempo compartido en programaciónTiempo compartido en programación
Tiempo compartido en programación
 
Portafolio de evidencias del curso Programación Avanzada
Portafolio de evidencias del curso Programación AvanzadaPortafolio de evidencias del curso Programación Avanzada
Portafolio de evidencias del curso Programación Avanzada
 
Eficiencia en uso tiempo
Eficiencia en uso  tiempoEficiencia en uso  tiempo
Eficiencia en uso tiempo
 
Administración de memoria arreglos dinamicos
Administración de memoria arreglos dinamicosAdministración de memoria arreglos dinamicos
Administración de memoria arreglos dinamicos
 
Practica de arreglos
Practica de arreglosPractica de arreglos
Practica de arreglos
 
Otra introducción a apuntadores
Otra introducción a apuntadoresOtra introducción a apuntadores
Otra introducción a apuntadores
 
Ejemplo de solución de práctica funciones stl
Ejemplo de solución de práctica funciones stlEjemplo de solución de práctica funciones stl
Ejemplo de solución de práctica funciones stl
 
Breve repaso de apuntadores
Breve repaso de apuntadoresBreve repaso de apuntadores
Breve repaso de apuntadores
 
Arreglos conceptos básicos
Arreglos conceptos básicosArreglos conceptos básicos
Arreglos conceptos básicos
 
Resolución práctica de tipos de datos
Resolución práctica de tipos de datosResolución práctica de tipos de datos
Resolución práctica de tipos de datos
 
Resumen de funciones
Resumen de funcionesResumen de funciones
Resumen de funciones
 
Biblioteca estándar de funciones
Biblioteca estándar de funcionesBiblioteca estándar de funciones
Biblioteca estándar de funciones
 
Manejo de bits
Manejo de bitsManejo de bits
Manejo de bits
 
Aclaración de dudas 4 de septiembre
Aclaración de dudas 4 de septiembreAclaración de dudas 4 de septiembre
Aclaración de dudas 4 de septiembre
 
Aclaraciones varias a códigos entregados en sesión 3
Aclaraciones varias a códigos entregados en sesión 3Aclaraciones varias a códigos entregados en sesión 3
Aclaraciones varias a códigos entregados en sesión 3
 
Funciones definidas por el usuario
Funciones definidas por el usuarioFunciones definidas por el usuario
Funciones definidas por el usuario
 
Función main()
Función main()Función main()
Función main()
 
Depuración de un programa en c++
Depuración de un programa en c++Depuración de un programa en c++
Depuración de un programa en c++
 
Algunas dudas de la sesión 28 agosto
Algunas dudas de la sesión 28 agostoAlgunas dudas de la sesión 28 agosto
Algunas dudas de la sesión 28 agosto
 
Estructura programa c++
Estructura programa c++Estructura programa c++
Estructura programa c++
 

Último

Gestion de rendicion de cuentas viaticos.pptx
Gestion de rendicion de cuentas viaticos.pptxGestion de rendicion de cuentas viaticos.pptx
Gestion de rendicion de cuentas viaticos.pptxignaciomiguel162
 
1.- PLANIFICACIÓN PRELIMINAR DE AUDITORÍA.pptx
1.- PLANIFICACIÓN PRELIMINAR DE AUDITORÍA.pptx1.- PLANIFICACIÓN PRELIMINAR DE AUDITORÍA.pptx
1.- PLANIFICACIÓN PRELIMINAR DE AUDITORÍA.pptxCarlosQuionez42
 
Efectos del cambio climatico en huanuco.pptx
Efectos del cambio climatico en huanuco.pptxEfectos del cambio climatico en huanuco.pptx
Efectos del cambio climatico en huanuco.pptxCONSTRUCTORAEINVERSI3
 
LIC-ZIEGLER-Planificación y Control de Gestión
LIC-ZIEGLER-Planificación y Control de GestiónLIC-ZIEGLER-Planificación y Control de Gestión
LIC-ZIEGLER-Planificación y Control de GestiónBahamondesOscar
 
Clase 2 Ecosistema Emprendedor en Chile.
Clase 2 Ecosistema Emprendedor en Chile.Clase 2 Ecosistema Emprendedor en Chile.
Clase 2 Ecosistema Emprendedor en Chile.Gonzalo Morales Esparza
 
informacion-finanTFHHETHAETHciera-2022.pdf
informacion-finanTFHHETHAETHciera-2022.pdfinformacion-finanTFHHETHAETHciera-2022.pdf
informacion-finanTFHHETHAETHciera-2022.pdfPriscilaBermello
 
FORMAS DE TRANSPORTE EN MASA-PDF.pdf lclases
FORMAS DE TRANSPORTE EN MASA-PDF.pdf  lclasesFORMAS DE TRANSPORTE EN MASA-PDF.pdf  lclases
FORMAS DE TRANSPORTE EN MASA-PDF.pdf lclasesjvalenciama
 
PPT DIAGNOSTICO DAFO Y CAME MEGAPUERTO CHANCAY
PPT DIAGNOSTICO DAFO Y CAME MEGAPUERTO CHANCAYPPT DIAGNOSTICO DAFO Y CAME MEGAPUERTO CHANCAY
PPT DIAGNOSTICO DAFO Y CAME MEGAPUERTO CHANCAYCarlosAlbertoVillafu3
 
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsx
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsxINFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsx
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsxCORPORACIONJURIDICA
 
EVALUACIÓN PARCIAL de seminario de .pdf
EVALUACIÓN PARCIAL de seminario de  .pdfEVALUACIÓN PARCIAL de seminario de  .pdf
EVALUACIÓN PARCIAL de seminario de .pdfDIEGOSEBASTIANCAHUAN
 
ADMINISTRACION FINANCIERA CAPITULO 4.pdf
ADMINISTRACION FINANCIERA CAPITULO 4.pdfADMINISTRACION FINANCIERA CAPITULO 4.pdf
ADMINISTRACION FINANCIERA CAPITULO 4.pdfguillencuevaadrianal
 
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptxINTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptxRENANRODRIGORAMIREZR
 
Trabajo de Sifilisn…………………………………………………..
Trabajo de Sifilisn…………………………………………………..Trabajo de Sifilisn…………………………………………………..
Trabajo de Sifilisn…………………………………………………..JoseRamirez247144
 
PRESENTACIÓN EDIFICIOS INDUSTRIALES.pptx
PRESENTACIÓN EDIFICIOS INDUSTRIALES.pptxPRESENTACIÓN EDIFICIOS INDUSTRIALES.pptx
PRESENTACIÓN EDIFICIOS INDUSTRIALES.pptxaramirezc21
 
clase de Mercados financieros - lectura importante
clase de Mercados financieros - lectura importanteclase de Mercados financieros - lectura importante
clase de Mercados financieros - lectura importanteJanettCervantes1
 
COPASST Y COMITE DE CONVIVENCIA.pptx DE LA EMPRESA
COPASST Y COMITE DE CONVIVENCIA.pptx DE LA EMPRESACOPASST Y COMITE DE CONVIVENCIA.pptx DE LA EMPRESA
COPASST Y COMITE DE CONVIVENCIA.pptx DE LA EMPRESADanielAndresBrand
 
Contabilidad universitaria Septima edición de MCGrawsHill
Contabilidad universitaria Septima edición de MCGrawsHillContabilidad universitaria Septima edición de MCGrawsHill
Contabilidad universitaria Septima edición de MCGrawsHilldanilojaviersantiago
 
TEMA 6.- MAXIMIZACION DE LA CONDUCTA DEL PRODUCTOR.pptx
TEMA 6.- MAXIMIZACION DE LA CONDUCTA DEL PRODUCTOR.pptxTEMA 6.- MAXIMIZACION DE LA CONDUCTA DEL PRODUCTOR.pptx
TEMA 6.- MAXIMIZACION DE LA CONDUCTA DEL PRODUCTOR.pptxFrancoSGonzales
 
modulo+penal+del+16+al+20+hhggde+enero.pdf
modulo+penal+del+16+al+20+hhggde+enero.pdfmodulo+penal+del+16+al+20+hhggde+enero.pdf
modulo+penal+del+16+al+20+hhggde+enero.pdfmisssusanalrescate01
 

Último (20)

Tarea-4-Estadistica-Descriptiva-Materia.ppt
Tarea-4-Estadistica-Descriptiva-Materia.pptTarea-4-Estadistica-Descriptiva-Materia.ppt
Tarea-4-Estadistica-Descriptiva-Materia.ppt
 
Gestion de rendicion de cuentas viaticos.pptx
Gestion de rendicion de cuentas viaticos.pptxGestion de rendicion de cuentas viaticos.pptx
Gestion de rendicion de cuentas viaticos.pptx
 
1.- PLANIFICACIÓN PRELIMINAR DE AUDITORÍA.pptx
1.- PLANIFICACIÓN PRELIMINAR DE AUDITORÍA.pptx1.- PLANIFICACIÓN PRELIMINAR DE AUDITORÍA.pptx
1.- PLANIFICACIÓN PRELIMINAR DE AUDITORÍA.pptx
 
Efectos del cambio climatico en huanuco.pptx
Efectos del cambio climatico en huanuco.pptxEfectos del cambio climatico en huanuco.pptx
Efectos del cambio climatico en huanuco.pptx
 
LIC-ZIEGLER-Planificación y Control de Gestión
LIC-ZIEGLER-Planificación y Control de GestiónLIC-ZIEGLER-Planificación y Control de Gestión
LIC-ZIEGLER-Planificación y Control de Gestión
 
Clase 2 Ecosistema Emprendedor en Chile.
Clase 2 Ecosistema Emprendedor en Chile.Clase 2 Ecosistema Emprendedor en Chile.
Clase 2 Ecosistema Emprendedor en Chile.
 
informacion-finanTFHHETHAETHciera-2022.pdf
informacion-finanTFHHETHAETHciera-2022.pdfinformacion-finanTFHHETHAETHciera-2022.pdf
informacion-finanTFHHETHAETHciera-2022.pdf
 
FORMAS DE TRANSPORTE EN MASA-PDF.pdf lclases
FORMAS DE TRANSPORTE EN MASA-PDF.pdf  lclasesFORMAS DE TRANSPORTE EN MASA-PDF.pdf  lclases
FORMAS DE TRANSPORTE EN MASA-PDF.pdf lclases
 
PPT DIAGNOSTICO DAFO Y CAME MEGAPUERTO CHANCAY
PPT DIAGNOSTICO DAFO Y CAME MEGAPUERTO CHANCAYPPT DIAGNOSTICO DAFO Y CAME MEGAPUERTO CHANCAY
PPT DIAGNOSTICO DAFO Y CAME MEGAPUERTO CHANCAY
 
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsx
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsxINFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsx
INFORMATIVO CIRCULAR FISCAL - RENTA 2023.ppsx
 
EVALUACIÓN PARCIAL de seminario de .pdf
EVALUACIÓN PARCIAL de seminario de  .pdfEVALUACIÓN PARCIAL de seminario de  .pdf
EVALUACIÓN PARCIAL de seminario de .pdf
 
ADMINISTRACION FINANCIERA CAPITULO 4.pdf
ADMINISTRACION FINANCIERA CAPITULO 4.pdfADMINISTRACION FINANCIERA CAPITULO 4.pdf
ADMINISTRACION FINANCIERA CAPITULO 4.pdf
 
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptxINTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
 
Trabajo de Sifilisn…………………………………………………..
Trabajo de Sifilisn…………………………………………………..Trabajo de Sifilisn…………………………………………………..
Trabajo de Sifilisn…………………………………………………..
 
PRESENTACIÓN EDIFICIOS INDUSTRIALES.pptx
PRESENTACIÓN EDIFICIOS INDUSTRIALES.pptxPRESENTACIÓN EDIFICIOS INDUSTRIALES.pptx
PRESENTACIÓN EDIFICIOS INDUSTRIALES.pptx
 
clase de Mercados financieros - lectura importante
clase de Mercados financieros - lectura importanteclase de Mercados financieros - lectura importante
clase de Mercados financieros - lectura importante
 
COPASST Y COMITE DE CONVIVENCIA.pptx DE LA EMPRESA
COPASST Y COMITE DE CONVIVENCIA.pptx DE LA EMPRESACOPASST Y COMITE DE CONVIVENCIA.pptx DE LA EMPRESA
COPASST Y COMITE DE CONVIVENCIA.pptx DE LA EMPRESA
 
Contabilidad universitaria Septima edición de MCGrawsHill
Contabilidad universitaria Septima edición de MCGrawsHillContabilidad universitaria Septima edición de MCGrawsHill
Contabilidad universitaria Septima edición de MCGrawsHill
 
TEMA 6.- MAXIMIZACION DE LA CONDUCTA DEL PRODUCTOR.pptx
TEMA 6.- MAXIMIZACION DE LA CONDUCTA DEL PRODUCTOR.pptxTEMA 6.- MAXIMIZACION DE LA CONDUCTA DEL PRODUCTOR.pptx
TEMA 6.- MAXIMIZACION DE LA CONDUCTA DEL PRODUCTOR.pptx
 
modulo+penal+del+16+al+20+hhggde+enero.pdf
modulo+penal+del+16+al+20+hhggde+enero.pdfmodulo+penal+del+16+al+20+hhggde+enero.pdf
modulo+penal+del+16+al+20+hhggde+enero.pdf
 

10 Pilas

  • 1. 2.5 Pilas (stack) Apoyo SSD5
  • 2. Pilas Una pila es una estructura de datos lineal que brinda acceso sólo al último elemento agregado. En una pila, los elementos sólo pueden ser agregados y eliminados del final de una secuencia. Esto lleva a la política de inserción y eliminación de elementos conocida como quot;Último en Entrar, Primero en Salirquot;. Mtl Lourdes Cahuich 2
  • 3. Pilas Dicho de otra forma, el siguiente elemento que puede ser eliminado de una pila es siempre el elemento que fue agregado más recientemente en la pila. Siempre podemos agregar más elementos a la pila, pero cada vez que lo hacemos, el elemento agregado más recientemente se convierte en el elemento que puede ser eliminado primero. Mtl Lourdes Cahuich 3
  • 5. Pilas Con este modelo en mente, pasemos a añadir unos cuantos elementos a una pila que inicialmente se encuentra vacía. Primero añadimos (generalmente se le conoce como quot;empujarquot; (pushing) a la fila un elemento con el valor de 1. Mtl Lourdes Cahuich 5
  • 7. Pilas El elemento sombreado en gris está ahora en la parte más alta de la pila. Al añadir el segundo elemento se esconde el primer elemento debido a que el segundo elemento es ahora el único elemento que puede ser eliminado. Además, es el único elemento de la pila a cuyo valor podemos acceder. Mtl Lourdes Cahuich 7
  • 8. Pilas Esta es una propiedad importante de la estructura de datos de pilas que difiere de los vectores y los deques. En una pila, tenemos acceso al número de elementos almacenados en la estructura de datos, pero no tenemos acceso a todos los valores de los elementos Mtl Lourdes Cahuich 8
  • 9. Pilas Si fuéramos a eliminar un elemento de la pila (por lo general se le conoce como quot;poppingquot;), nuestra pila se vería como en la figura de enmedio Hemos examinado cómo operan las pilas y hemos visto las operaciones principales asociadas con las pilas. En resumen, quot;empujandoquot; o quot;pushingquot; agrega un elemento en la parte más alta de la pila, y quot;poppingquot; elimina el elemento que se encuentra más arriba de la fila. Mtl Lourdes Cahuich 9
  • 10. Aplicaciones de Pilas Las pilas son una estructura importante en la Ciencia Computacional, y tienen muchas aplicaciones diferentes. Estas aplicaciones varían de tareas sencillas como invertir los caracteres en una cadena, a tareas más complejas como la evaluación de expresiones aritméticas o la navegación de laberintos. Mtl Lourdes Cahuich 10
  • 11. Aplicaciones de Pilas Es importante tener un entendimiento sólido del concepto de una pila, debido a que más adelante encontraremos muchos usos de pilas en el contexto de otras estructuras de datos y algoritmos. Mtl Lourdes Cahuich 11
  • 12. Cómo Usar el Adaptador stack de STL El adaptador stack de STL ofrece una interfaz adecuada para ser usada como una pila. A continuación muestra todas las funciones miembro del adaptador stack Mtl Lourdes Cahuich 12
  • 13. #include <iostream> #include <string> #include <cstdlib> #include <stack> using namespace std; int main(int argc, char* argv[]) { stack<int> s; // push and pop s.push(1); s.pop(); // top s.push(10); s.push(11); cout << s.top() << endl; // size and empty cout << s.size() << endl; cout << s.empty() << endl; return EXIT_SUCCESS; } Mtl Lourdes Cahuich 13
  • 14. Adaptador stack Solamente existen seis funciones miembro en la interfaz del adaptador stack. Los métodos push y pop insertan y eliminan elementos de una pila, respectivamente, y el método top regresa una referencia a los datos almacenados arriba de la pila. Mtl Lourdes Cahuich 14
  • 15. Adaptador stack Al igual que el adaptador queue, el método size regresa el número de elementos almacenados en una pila y el método empty despliega true si una fila está vacía y false si la pila no está vacía. Para usar el adaptador stack de STL en un programa, un programador debe incluir la biblioteca <stack>. Mtl Lourdes Cahuich 15
  • 16. Adaptador stack Este listado despliega las líneas de un archivo texto en orden inverso. Una pila provee una estructura de datos natural para resolver este problema. Mtl Lourdes Cahuich 16
  • 17. // open file specified by command-line argument ifstream inf(argv[1]); if ( !inf ) { cerr << quot;cannot open quot; << filename << quot; for inputquot; << endl; return EXIT_FAILURE; } stack<string> s; string line; // read file line by line while (getline(inf, line)) { s.push(line); } inf.close(); // print lines in reverse while (!s.empty()) { cout << s.top() << endl; s.pop(); } Mtl Lourdes Cahuich 17