SlideShare uma empresa Scribd logo
1 de 8
PILAS



Una pila (stack en inglés) es una lista ordinal o estructura de datos en la que el
modo de acceso a sus elementos es de tipo LIFO (del inglés Last In First Out,
último en entrar, primero en salir) que permite almacenar y recuperar datos. Se
aplica en multitud de ocasiones en informática debido a su simplicidad y
ordenación implícita en la propia estructura.




Para el manejo de los datos se cuenta con dos operaciones básicas: apilar (push),
que coloca un objeto en la pila, y su operación inversa, retirar (o desapilar, pop),
que retira el último elemento apilado.

En cada momento sólo se tiene acceso a la parte superior de la pila, es decir, al
último objeto apilado (denominado TOS, Top of Stack en inglés). La operación
retirar permite la obtención de este elemento, que es retirado de la pila
permitiendo el acceso al siguiente (apilado con anterioridad), que pasa a ser el
nuevo TOS.

Por analogía con objetos cotidianos, una operación apilar equivaldría a colocar un
plato sobre una pila de platos, y una operación retirar a retirarlo.
Las pilas suelen emplearse en los siguientes contextos:

       Evaluación de expresiones en notación postfija (notación polaca inversa).
       Reconocedores sintácticos de lenguajes independientes del contexto
       Implementación de recursividad.
       Llamadas a subprogramas



                                   Operaciones

Una pila cuenta con 2 operaciones imprescindibles: apilar y desapilar, a las que en
las implementaciones modernas de las pilas se suelen añadir más de uso habitual.

       Crear: se crea la pila vacía.
       Apilar: se añade un elemento a la pila.(push)
       Desapilar: se elimina el elemento frontal de la pila.(pop)
       Cima: devuelve el elemento que está en la cima de la pila. (top o peek)
       Vacía: devuelve cierto si la pila está vacía o falso en caso contrario.



Indexación base-cero (0): En este modo el primer elemento del vector será la
componente cero ('0') del mismo, es decir, tendrá el índice '0'. En consecuencia, si
el vector tiene 'n' componentes la última tendrá como índice el valor 'n-1'. Java y el
lenguaje C es un ejemplo típico que utiliza este modo de indexación.
Nota: No confundir los elementos de la Pila con la posición o índice de la Misma




Pila Vacia            Pila con algunos elementos                       Pila LLena
Para acceder a los elementos de la estructura es necesario hacer referencia al
nombre e indicar la posición.



Pila [Tope]= 9

Nota: En adelante se hace referencia a las estructuras creadas con base a la
utilización de clases, métodos y el nivel de accesibilidad de los mismos.



                                    I
                      DECLARACION DE LA ESTRUCTURA


1.1CREACION DE LA PILA




1.2 Definir las variables que manipularán la estructura.

En esta parte del diseño es necesario definir las variables índices, variables de
cálculos y operaciones que regirán los métodos con ámbito global y el nivel de
visibilidad. Para darle una correcta documentación al diseño es recomendable
comentar el uso que tendrá dicha variable en la estructura que se está diseñando


      protegido Entero Pila []; // Estructura de la pila

      protegido Entero Top, Max , Elem, pos; // variables para la pila



      //Top : El Tope de la pila , referencia al último elemento que está en la pila

      //Max : Máximo de espacios que tiene la pila

      //Elem : Elemento que se agrega a la pila (Tecleado por el usuario)
II
                         INICIALIZACIÓN DE LA ESTRUCTURA


Elaboración de un método constructor para inicializar la estructura.

2.1 Se toman como referencia para el tamaño de la pila el parámetro contenido en
las variables Espacios, el dato de este parámetro es obtenido a través de otra
clase Que llamaremos MenuPpal donde el usuario determina el tamaño de la Pila.

2.2 Se indica nivel de acceso público a la estructura creada.


2.3 Creación de la Pila se representa como estructura de datos definida por el
usuario

2.4 Se inicializan los valores de las variables de la estructura.



       //----- Contructor -------

       publico Pila (entero Espacios) // se recibe como parámetro los Espacios de la pila

       Inicio

                Pila = new entero [Espacios]; // Asignamos los espacios en la Pila

                Max = Espacios - 1;         // Se determina la capacidad máxima de almacenamiento

                Top = -1; // Top se declara como -1 como referencia a que no existen datos en la pila

       Fin

        //------- Fin del constructor ------
III


                                    Métodos
Los métodos son subrutinas que gobernaran a la estructura de datos creada, los
métodos permitirán definir el comportamiento de la estructura durante la ejecución
del programa.


Las operaciones cotidianas que realizan las pilas son las siguientes
      Inserción ( Push)
      Eliminación (Pop)
      Búsqueda
      Visualización



Inicialmente definiremos los métodos que indicarán el estado de la estructura en
este caso nos interesa saber cuando la pila está llena y cuando esta vacía para
lo cual realizaremos métodos booleanos que determinar si es falso o verdadero el
estado consultado.




3.1 Método para determinar si una pila esta vacía.

Publico booleano PilaVacia()
Inicio
     Si (Top==-1)
     Inicio
          retorne Verdadero;
          sino
             retorne falso;
     Fin Si
Fin Metodo

Explicación: La variable Top es el índice de la pila y se está utilizando el sistema
de indexación en base a 0, por lo cual si el valor del Top es de -1 indicaría que la
estructura esta vacía.
3.2 Método para determinar si una Pila está Llena.


Publico booleano PilaLLena()
Inicio
     Si (Top==Max)
     Inicio
          retorne Verdadero;
          sino
             returne falso;
     Fin Si
Fin Metodo

Explicación: La variable Max está almacenado la capacidad máxima de
almacenamiento de la Pila, por lo tanto se comparan el índice en este caso la
variable Top con la capacidad en caso tal que sean iguales nos indicaría que la
estructura está Llena.


3.3 Método para insertar un elemento a la Pila.


Publico Push()
Inicio
       Si(!pilaLlena()) // Si la pila No esta llena .... Se puede agregar un nuevo dato a la pila
             Elem = Leer(" Digite numero ");
            Top = Top+1;; // Se incrementa Top como referencia de que se agrego un nuevo dato
            Pila[Top] = Elem; // Se agrega el nuevo elemento a la pila
            si (pilaLlena()) // Si la pila quedo llena entoces ... Imprimir mensaje
                Escriba (" La Pila a quedado llena !! ");
           Fin si
           sino
                Escriba(" Pila llena !! Imposible introducir un valor a la pila");
       Fin Si
Fin Metodo

Explicación: Se verifica si se pueden insertar elementos invocando la negación
del método pila llena, si es posible se incrementa el tope y se inserta el elemento
capturado en la pila.
3.4 Método para Eliminar un elemento de la Pila.

Publico Pop ()
Inicio
       Si(!pilaVacia()) // Si la pila no esta vacia entonces ....
                 Escriba("Se borro el Dato : " + Pila[Top]); // Eliminar dato
                 Pila[Top] = 0; // remplaza el valor por un cero (Eliminado)
                 Top= Top-1; // Top se reduce para decir que un elemento se borro
               Sino // De lo contrario imprime .."que la pila esta vacia"
                 Escriba ("Pila Vacia... Imposible Eliminar");
       Fin Si
Fin Metodo


Explicación: Se verifica si se pueden la pila esta vacía invocando la negación del
método pila Vacía, si hay elementos se asigna cero o null según sea el caso para
indicar la eliminación del elemento y se decrementa el tope liberando una posición
dentro de la pila.

Mais conteúdo relacionado

Mais procurados

Funcionamiento de un pila
Funcionamiento de un pilaFuncionamiento de un pila
Funcionamiento de un pilajefer
 
Codigo para implementar pilas en java
Codigo para implementar pilas en javaCodigo para implementar pilas en java
Codigo para implementar pilas en javaTeresa Freire
 
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)Eli Diaz
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colasJose R. Trejo
 
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
 
10. aplicaciones de las pilas
10. aplicaciones de las pilas10. aplicaciones de las pilas
10. aplicaciones de las pilasAndreita Enriquez
 
Pilas y Colas
Pilas y ColasPilas y Colas
Pilas y ColasAlex Pin
 
Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfijaOmarzingm
 
Estructuras dinámicas
Estructuras dinámicasEstructuras dinámicas
Estructuras dinámicasPatriciaU
 
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
 

Mais procurados (19)

Pilas y colas
Pilas y colasPilas y colas
Pilas y colas
 
Fila,pila y cola ..
Fila,pila y cola ..Fila,pila y cola ..
Fila,pila y cola ..
 
Estructura datos pilas y colas
Estructura datos pilas y colasEstructura datos pilas y colas
Estructura datos pilas y colas
 
Listas Pilas Colas
Listas Pilas ColasListas Pilas Colas
Listas Pilas Colas
 
Funcionamiento de un pila
Funcionamiento de un pilaFuncionamiento de un pila
Funcionamiento de un pila
 
Codigo para implementar pilas en java
Codigo para implementar pilas en javaCodigo para implementar pilas en java
Codigo para implementar pilas en java
 
Pilas Colas
Pilas ColasPilas Colas
Pilas Colas
 
Python Pilas y Colas
Python Pilas y ColasPython Pilas y Colas
Python Pilas y Colas
 
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
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
 
PILAS
PILASPILAS
PILAS
 
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
 
10. aplicaciones de las pilas
10. aplicaciones de las pilas10. aplicaciones de las pilas
10. aplicaciones de las pilas
 
Pilas y Colas
Pilas y ColasPilas y Colas
Pilas y Colas
 
Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfija
 
Estructuras dinámicas
Estructuras dinámicasEstructuras dinámicas
Estructuras dinámicas
 
Java pilas (Stacks) y colas (Queues)
Java pilas (Stacks) y colas (Queues)Java pilas (Stacks) y colas (Queues)
Java pilas (Stacks) y colas (Queues)
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 

Destaque

Coke profile august 18
Coke profile august 18Coke profile august 18
Coke profile august 18nooodr
 
Kpacket 2014 Top_Ten_Guide
Kpacket 2014 Top_Ten_GuideKpacket 2014 Top_Ten_Guide
Kpacket 2014 Top_Ten_GuideAPEX Global
 
Hon394 Historicalstudy
Hon394 HistoricalstudyHon394 Historicalstudy
Hon394 HistoricalstudyCameron
 
HCA 457 Stress in the Japanese Workplace
HCA 457 Stress in the Japanese WorkplaceHCA 457 Stress in the Japanese Workplace
HCA 457 Stress in the Japanese WorkplaceGrayson Teng
 
Qué Pasa DespuéS Que Morimos
Qué Pasa DespuéS Que MorimosQué Pasa DespuéS Que Morimos
Qué Pasa DespuéS Que MorimosEngel Fonseca
 
Leading on The Diagonal
Leading on The DiagonalLeading on The Diagonal
Leading on The DiagonalAndrew Wolff
 
Major Incident Management Trends: 2016 Survey Report
Major Incident Management Trends: 2016 Survey ReportMajor Incident Management Trends: 2016 Survey Report
Major Incident Management Trends: 2016 Survey ReportxMatters Inc
 
SDM1_Group7_Amul
SDM1_Group7_AmulSDM1_Group7_Amul
SDM1_Group7_AmulRAJAT GARG
 
La biblia nos cuenta su historia
La biblia nos cuenta su historiaLa biblia nos cuenta su historia
La biblia nos cuenta su historiaSan-Pio
 
PowerWoman in FinTech
PowerWoman in FinTechPowerWoman in FinTech
PowerWoman in FinTechCFTE
 
Psfk digital transformation playbook
Psfk digital transformation playbookPsfk digital transformation playbook
Psfk digital transformation playbookInformatica
 
Martha Stewart by Becca Kleinstien
Martha Stewart by Becca KleinstienMartha Stewart by Becca Kleinstien
Martha Stewart by Becca KleinstienStew Friedman
 
Nelson Mandela by Kevin Lam
Nelson Mandela by Kevin LamNelson Mandela by Kevin Lam
Nelson Mandela by Kevin LamStew Friedman
 
Dominique Reiniche by Stephane Lesaffre
Dominique Reiniche by Stephane LesaffreDominique Reiniche by Stephane Lesaffre
Dominique Reiniche by Stephane LesaffreStew Friedman
 

Destaque (20)

Spring 2007
Spring 2007Spring 2007
Spring 2007
 
Coke profile august 18
Coke profile august 18Coke profile august 18
Coke profile august 18
 
Kpacket 2014 Top_Ten_Guide
Kpacket 2014 Top_Ten_GuideKpacket 2014 Top_Ten_Guide
Kpacket 2014 Top_Ten_Guide
 
Semitismos en elnt
Semitismos en elntSemitismos en elnt
Semitismos en elnt
 
Hon394 Historicalstudy
Hon394 HistoricalstudyHon394 Historicalstudy
Hon394 Historicalstudy
 
Arch Mohamad Fahed Annous
Arch Mohamad Fahed AnnousArch Mohamad Fahed Annous
Arch Mohamad Fahed Annous
 
Juridica 615
Juridica 615Juridica 615
Juridica 615
 
HCA 457 Stress in the Japanese Workplace
HCA 457 Stress in the Japanese WorkplaceHCA 457 Stress in the Japanese Workplace
HCA 457 Stress in the Japanese Workplace
 
Qué Pasa DespuéS Que Morimos
Qué Pasa DespuéS Que MorimosQué Pasa DespuéS Que Morimos
Qué Pasa DespuéS Que Morimos
 
Leading on The Diagonal
Leading on The DiagonalLeading on The Diagonal
Leading on The Diagonal
 
Major Incident Management Trends: 2016 Survey Report
Major Incident Management Trends: 2016 Survey ReportMajor Incident Management Trends: 2016 Survey Report
Major Incident Management Trends: 2016 Survey Report
 
SDM1_Group7_Amul
SDM1_Group7_AmulSDM1_Group7_Amul
SDM1_Group7_Amul
 
1 corintios 6
1 corintios 61 corintios 6
1 corintios 6
 
La biblia nos cuenta su historia
La biblia nos cuenta su historiaLa biblia nos cuenta su historia
La biblia nos cuenta su historia
 
PowerWoman in FinTech
PowerWoman in FinTechPowerWoman in FinTech
PowerWoman in FinTech
 
Los castigados del tártaro lidia lópez
Los castigados del tártaro   lidia lópezLos castigados del tártaro   lidia lópez
Los castigados del tártaro lidia lópez
 
Psfk digital transformation playbook
Psfk digital transformation playbookPsfk digital transformation playbook
Psfk digital transformation playbook
 
Martha Stewart by Becca Kleinstien
Martha Stewart by Becca KleinstienMartha Stewart by Becca Kleinstien
Martha Stewart by Becca Kleinstien
 
Nelson Mandela by Kevin Lam
Nelson Mandela by Kevin LamNelson Mandela by Kevin Lam
Nelson Mandela by Kevin Lam
 
Dominique Reiniche by Stephane Lesaffre
Dominique Reiniche by Stephane LesaffreDominique Reiniche by Stephane Lesaffre
Dominique Reiniche by Stephane Lesaffre
 

Semelhante a Pilas LIFO en

TRABAJO JOSE GABRIEL LUCENA PILAS PDF1233
TRABAJO JOSE GABRIEL LUCENA PILAS PDF1233TRABAJO JOSE GABRIEL LUCENA PILAS PDF1233
TRABAJO JOSE GABRIEL LUCENA PILAS PDF1233GABRIEL64287
 
Declarar Pilas. Definicion, Caracteristicaspdf
Declarar Pilas. Definicion, CaracteristicaspdfDeclarar Pilas. Definicion, Caracteristicaspdf
Declarar Pilas. Definicion, CaracteristicaspdfLENNYGALINDEZ
 
Unidad 2 - Clase 5 - Pilas. sistemas de ls organizacion
Unidad 2 - Clase 5 - Pilas. sistemas de ls organizacionUnidad 2 - Clase 5 - Pilas. sistemas de ls organizacion
Unidad 2 - Clase 5 - Pilas. sistemas de ls organizacionherbasrocio
 
Pilas Dylan Medina.pdf
Pilas Dylan Medina.pdfPilas Dylan Medina.pdf
Pilas Dylan Medina.pdfDylanMedina4
 
Pilas
PilasPilas
Pilaserik
 
Pilas
PilasPilas
Pilaserik
 
Pilas como estructura de datos..
Pilas como estructura de datos..Pilas como estructura de datos..
Pilas como estructura de datos..NANO-06
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datoscharlezgt
 
Estructuradatospilasycolas 121106170754-phpapp02
Estructuradatospilasycolas 121106170754-phpapp02Estructuradatospilasycolas 121106170754-phpapp02
Estructuradatospilasycolas 121106170754-phpapp02Z Karina Hernandez A
 
Ejercicios evaluados i. shearly achji y ricardo ros. estructuras de datos i. ...
Ejercicios evaluados i. shearly achji y ricardo ros. estructuras de datos i. ...Ejercicios evaluados i. shearly achji y ricardo ros. estructuras de datos i. ...
Ejercicios evaluados i. shearly achji y ricardo ros. estructuras de datos i. ...Ricardo Ros
 
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
 
Listas, pilas & colas
Listas, pilas & colasListas, pilas & colas
Listas, pilas & colasjorgeluis0317
 
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
 

Semelhante a Pilas LIFO en (20)

DECLARACIÓN DE PILAS.pdf
DECLARACIÓN DE PILAS.pdfDECLARACIÓN DE PILAS.pdf
DECLARACIÓN DE PILAS.pdf
 
TRABAJO JOSE GABRIEL LUCENA PILAS PDF1233
TRABAJO JOSE GABRIEL LUCENA PILAS PDF1233TRABAJO JOSE GABRIEL LUCENA PILAS PDF1233
TRABAJO JOSE GABRIEL LUCENA PILAS PDF1233
 
Declarar Pilas. Definicion, Caracteristicaspdf
Declarar Pilas. Definicion, CaracteristicaspdfDeclarar Pilas. Definicion, Caracteristicaspdf
Declarar Pilas. Definicion, Caracteristicaspdf
 
Unidad 2 - Clase 5 - Pilas. sistemas de ls organizacion
Unidad 2 - Clase 5 - Pilas. sistemas de ls organizacionUnidad 2 - Clase 5 - Pilas. sistemas de ls organizacion
Unidad 2 - Clase 5 - Pilas. sistemas de ls organizacion
 
Pilas
PilasPilas
Pilas
 
Pilas Dylan Medina.pdf
Pilas Dylan Medina.pdfPilas Dylan Medina.pdf
Pilas Dylan Medina.pdf
 
Pilas
PilasPilas
Pilas
 
Pilas
PilasPilas
Pilas
 
Pilas como estructura de datos..
Pilas como estructura de datos..Pilas como estructura de datos..
Pilas como estructura de datos..
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datos
 
Pilasen c++
Pilasen c++Pilasen c++
Pilasen c++
 
Pilas .pptx
Pilas .pptxPilas .pptx
Pilas .pptx
 
PILAS
PILASPILAS
PILAS
 
Estructuradatospilasycolas 121106170754-phpapp02
Estructuradatospilasycolas 121106170754-phpapp02Estructuradatospilasycolas 121106170754-phpapp02
Estructuradatospilasycolas 121106170754-phpapp02
 
Estructura de datos pilas y colas
Estructura de datos pilas y colasEstructura de datos pilas y colas
Estructura de datos pilas y colas
 
Pilas ALAN MENDEZ.pdf
Pilas ALAN MENDEZ.pdfPilas ALAN MENDEZ.pdf
Pilas ALAN MENDEZ.pdf
 
Ejercicios evaluados i. shearly achji y ricardo ros. estructuras de datos i. ...
Ejercicios evaluados i. shearly achji y ricardo ros. estructuras de datos i. ...Ejercicios evaluados i. shearly achji y ricardo ros. estructuras de datos i. ...
Ejercicios evaluados i. shearly achji y ricardo ros. estructuras de datos i. ...
 
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
 
Listas, pilas & colas
Listas, pilas & colasListas, pilas & colas
Listas, pilas & colas
 
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
 

Mais de Boris Salleg

01. capitulo 2 6 validacion de datos
01. capitulo 2  6 validacion de datos01. capitulo 2  6 validacion de datos
01. capitulo 2 6 validacion de datosBoris Salleg
 
03. prueba de conocimiento inicial excel basico terminada
03. prueba de conocimiento inicial excel basico terminada03. prueba de conocimiento inicial excel basico terminada
03. prueba de conocimiento inicial excel basico terminadaBoris Salleg
 
01. contenido curso internet basico
01. contenido curso internet basico01. contenido curso internet basico
01. contenido curso internet basicoBoris Salleg
 
Contenido curso excel basico
Contenido curso excel basicoContenido curso excel basico
Contenido curso excel basicoBoris Salleg
 
Compromiso academico servicios de internet
Compromiso academico servicios de internetCompromiso academico servicios de internet
Compromiso academico servicios de internetBoris Salleg
 
Compromiso academico excel basico
Compromiso academico excel basicoCompromiso academico excel basico
Compromiso academico excel basicoBoris Salleg
 
Taller #1 institucion educativa las margaritas
Taller #1   institucion educativa las margaritasTaller #1   institucion educativa las margaritas
Taller #1 institucion educativa las margaritasBoris Salleg
 
Introduccion base de datos
Introduccion base de datosIntroduccion base de datos
Introduccion base de datosBoris Salleg
 
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jspExplicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jspBoris Salleg
 
Conexion bd en java y api necesaria
Conexion bd en java y api necesariaConexion bd en java y api necesaria
Conexion bd en java y api necesariaBoris Salleg
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionBoris Salleg
 
Algoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacionAlgoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacionBoris Salleg
 
Algoritmo de listas simples completo
Algoritmo de listas simples  completoAlgoritmo de listas simples  completo
Algoritmo de listas simples completoBoris Salleg
 
Introduccion base de datos con MYSQL
Introduccion base de datos con MYSQLIntroduccion base de datos con MYSQL
Introduccion base de datos con MYSQLBoris Salleg
 
Practica utilizacion de beans en jsp
Practica  utilizacion de beans en jspPractica  utilizacion de beans en jsp
Practica utilizacion de beans en jspBoris Salleg
 
Utilizacion de beans en jsp
Utilizacion de beans en jspUtilizacion de beans en jsp
Utilizacion de beans en jspBoris Salleg
 

Mais de Boris Salleg (20)

01. capitulo 2 6 validacion de datos
01. capitulo 2  6 validacion de datos01. capitulo 2  6 validacion de datos
01. capitulo 2 6 validacion de datos
 
03. prueba de conocimiento inicial excel basico terminada
03. prueba de conocimiento inicial excel basico terminada03. prueba de conocimiento inicial excel basico terminada
03. prueba de conocimiento inicial excel basico terminada
 
01. contenido curso internet basico
01. contenido curso internet basico01. contenido curso internet basico
01. contenido curso internet basico
 
Contenido curso excel basico
Contenido curso excel basicoContenido curso excel basico
Contenido curso excel basico
 
Compromiso academico servicios de internet
Compromiso academico servicios de internetCompromiso academico servicios de internet
Compromiso academico servicios de internet
 
Compromiso academico excel basico
Compromiso academico excel basicoCompromiso academico excel basico
Compromiso academico excel basico
 
Taller #1 institucion educativa las margaritas
Taller #1   institucion educativa las margaritasTaller #1   institucion educativa las margaritas
Taller #1 institucion educativa las margaritas
 
Arboles
ArbolesArboles
Arboles
 
Introduccion base de datos
Introduccion base de datosIntroduccion base de datos
Introduccion base de datos
 
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jspExplicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
 
Conexion bd en java y api necesaria
Conexion bd en java y api necesariaConexion bd en java y api necesaria
Conexion bd en java y api necesaria
 
Condicionales
CondicionalesCondicionales
Condicionales
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacion
 
Algoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacionAlgoritmos, programas, compiladores y lenguajes de programacion
Algoritmos, programas, compiladores y lenguajes de programacion
 
Algoritmo de listas simples completo
Algoritmo de listas simples  completoAlgoritmo de listas simples  completo
Algoritmo de listas simples completo
 
Introduccion base de datos con MYSQL
Introduccion base de datos con MYSQLIntroduccion base de datos con MYSQL
Introduccion base de datos con MYSQL
 
Practica utilizacion de beans en jsp
Practica  utilizacion de beans en jspPractica  utilizacion de beans en jsp
Practica utilizacion de beans en jsp
 
Utilizacion de beans en jsp
Utilizacion de beans en jspUtilizacion de beans en jsp
Utilizacion de beans en jsp
 
Practica eventos
Practica eventosPractica eventos
Practica eventos
 
Clase event
Clase eventClase event
Clase event
 

Último

Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxYeseniaRivera50
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOweislaco
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...YobanaZevallosSantil1
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfManuel Molina
 
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfFichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfssuser50d1252
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressionsConsueloSantana3
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024gharce
 
Presentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptxPresentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptxRosabel UA
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...fcastellanos3
 
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfFichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfssuser50d1252
 
05 Fenomenos fisicos y quimicos de la materia.pdf
05 Fenomenos fisicos y quimicos de la materia.pdf05 Fenomenos fisicos y quimicos de la materia.pdf
05 Fenomenos fisicos y quimicos de la materia.pdfRAMON EUSTAQUIO CARO BAYONA
 
PROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docxPROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docxEribertoPerezRamirez
 
DETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORDETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORGonella
 
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTESaraNolasco4
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfvictorbeltuce
 
III SEGUNDO CICLO PLAN DE TUTORÍA 2024.docx
III SEGUNDO CICLO PLAN DE TUTORÍA 2024.docxIII SEGUNDO CICLO PLAN DE TUTORÍA 2024.docx
III SEGUNDO CICLO PLAN DE TUTORÍA 2024.docxMaritza438836
 
3. Pedagogía de la Educación: Como objeto de la didáctica.ppsx
3. Pedagogía de la Educación: Como objeto de la didáctica.ppsx3. Pedagogía de la Educación: Como objeto de la didáctica.ppsx
3. Pedagogía de la Educación: Como objeto de la didáctica.ppsxJuanpm27
 
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docxEDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docxLuisAndersonPachasto
 

Último (20)

Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
 
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfFichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressions
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
 
Presentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptxPresentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptx
 
PPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptxPPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptx
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
 
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfFichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
 
05 Fenomenos fisicos y quimicos de la materia.pdf
05 Fenomenos fisicos y quimicos de la materia.pdf05 Fenomenos fisicos y quimicos de la materia.pdf
05 Fenomenos fisicos y quimicos de la materia.pdf
 
PROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docxPROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docx
 
DETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORDETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIOR
 
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
 
III SEGUNDO CICLO PLAN DE TUTORÍA 2024.docx
III SEGUNDO CICLO PLAN DE TUTORÍA 2024.docxIII SEGUNDO CICLO PLAN DE TUTORÍA 2024.docx
III SEGUNDO CICLO PLAN DE TUTORÍA 2024.docx
 
recursos naturales america cuarto basico
recursos naturales america cuarto basicorecursos naturales america cuarto basico
recursos naturales america cuarto basico
 
3. Pedagogía de la Educación: Como objeto de la didáctica.ppsx
3. Pedagogía de la Educación: Como objeto de la didáctica.ppsx3. Pedagogía de la Educación: Como objeto de la didáctica.ppsx
3. Pedagogía de la Educación: Como objeto de la didáctica.ppsx
 
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docxEDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docx
 

Pilas LIFO en

  • 1. PILAS Una pila (stack en inglés) es una lista ordinal o estructura de datos en la que el modo de acceso a sus elementos es de tipo LIFO (del inglés Last In First Out, último en entrar, primero en salir) que permite almacenar y recuperar datos. Se aplica en multitud de ocasiones en informática debido a su simplicidad y ordenación implícita en la propia estructura. Para el manejo de los datos se cuenta con dos operaciones básicas: apilar (push), que coloca un objeto en la pila, y su operación inversa, retirar (o desapilar, pop), que retira el último elemento apilado. En cada momento sólo se tiene acceso a la parte superior de la pila, es decir, al último objeto apilado (denominado TOS, Top of Stack en inglés). La operación retirar permite la obtención de este elemento, que es retirado de la pila permitiendo el acceso al siguiente (apilado con anterioridad), que pasa a ser el nuevo TOS. Por analogía con objetos cotidianos, una operación apilar equivaldría a colocar un plato sobre una pila de platos, y una operación retirar a retirarlo.
  • 2. Las pilas suelen emplearse en los siguientes contextos: Evaluación de expresiones en notación postfija (notación polaca inversa). Reconocedores sintácticos de lenguajes independientes del contexto Implementación de recursividad. Llamadas a subprogramas Operaciones Una pila cuenta con 2 operaciones imprescindibles: apilar y desapilar, a las que en las implementaciones modernas de las pilas se suelen añadir más de uso habitual. Crear: se crea la pila vacía. Apilar: se añade un elemento a la pila.(push) Desapilar: se elimina el elemento frontal de la pila.(pop) Cima: devuelve el elemento que está en la cima de la pila. (top o peek) Vacía: devuelve cierto si la pila está vacía o falso en caso contrario. Indexación base-cero (0): En este modo el primer elemento del vector será la componente cero ('0') del mismo, es decir, tendrá el índice '0'. En consecuencia, si el vector tiene 'n' componentes la última tendrá como índice el valor 'n-1'. Java y el lenguaje C es un ejemplo típico que utiliza este modo de indexación.
  • 3. Nota: No confundir los elementos de la Pila con la posición o índice de la Misma Pila Vacia Pila con algunos elementos Pila LLena
  • 4. Para acceder a los elementos de la estructura es necesario hacer referencia al nombre e indicar la posición. Pila [Tope]= 9 Nota: En adelante se hace referencia a las estructuras creadas con base a la utilización de clases, métodos y el nivel de accesibilidad de los mismos. I DECLARACION DE LA ESTRUCTURA 1.1CREACION DE LA PILA 1.2 Definir las variables que manipularán la estructura. En esta parte del diseño es necesario definir las variables índices, variables de cálculos y operaciones que regirán los métodos con ámbito global y el nivel de visibilidad. Para darle una correcta documentación al diseño es recomendable comentar el uso que tendrá dicha variable en la estructura que se está diseñando protegido Entero Pila []; // Estructura de la pila protegido Entero Top, Max , Elem, pos; // variables para la pila //Top : El Tope de la pila , referencia al último elemento que está en la pila //Max : Máximo de espacios que tiene la pila //Elem : Elemento que se agrega a la pila (Tecleado por el usuario)
  • 5. II INICIALIZACIÓN DE LA ESTRUCTURA Elaboración de un método constructor para inicializar la estructura. 2.1 Se toman como referencia para el tamaño de la pila el parámetro contenido en las variables Espacios, el dato de este parámetro es obtenido a través de otra clase Que llamaremos MenuPpal donde el usuario determina el tamaño de la Pila. 2.2 Se indica nivel de acceso público a la estructura creada. 2.3 Creación de la Pila se representa como estructura de datos definida por el usuario 2.4 Se inicializan los valores de las variables de la estructura. //----- Contructor ------- publico Pila (entero Espacios) // se recibe como parámetro los Espacios de la pila Inicio Pila = new entero [Espacios]; // Asignamos los espacios en la Pila Max = Espacios - 1; // Se determina la capacidad máxima de almacenamiento Top = -1; // Top se declara como -1 como referencia a que no existen datos en la pila Fin //------- Fin del constructor ------
  • 6. III Métodos Los métodos son subrutinas que gobernaran a la estructura de datos creada, los métodos permitirán definir el comportamiento de la estructura durante la ejecución del programa. Las operaciones cotidianas que realizan las pilas son las siguientes Inserción ( Push) Eliminación (Pop) Búsqueda Visualización Inicialmente definiremos los métodos que indicarán el estado de la estructura en este caso nos interesa saber cuando la pila está llena y cuando esta vacía para lo cual realizaremos métodos booleanos que determinar si es falso o verdadero el estado consultado. 3.1 Método para determinar si una pila esta vacía. Publico booleano PilaVacia() Inicio Si (Top==-1) Inicio retorne Verdadero; sino retorne falso; Fin Si Fin Metodo Explicación: La variable Top es el índice de la pila y se está utilizando el sistema de indexación en base a 0, por lo cual si el valor del Top es de -1 indicaría que la estructura esta vacía.
  • 7. 3.2 Método para determinar si una Pila está Llena. Publico booleano PilaLLena() Inicio Si (Top==Max) Inicio retorne Verdadero; sino returne falso; Fin Si Fin Metodo Explicación: La variable Max está almacenado la capacidad máxima de almacenamiento de la Pila, por lo tanto se comparan el índice en este caso la variable Top con la capacidad en caso tal que sean iguales nos indicaría que la estructura está Llena. 3.3 Método para insertar un elemento a la Pila. Publico Push() Inicio Si(!pilaLlena()) // Si la pila No esta llena .... Se puede agregar un nuevo dato a la pila Elem = Leer(" Digite numero "); Top = Top+1;; // Se incrementa Top como referencia de que se agrego un nuevo dato Pila[Top] = Elem; // Se agrega el nuevo elemento a la pila si (pilaLlena()) // Si la pila quedo llena entoces ... Imprimir mensaje Escriba (" La Pila a quedado llena !! "); Fin si sino Escriba(" Pila llena !! Imposible introducir un valor a la pila"); Fin Si Fin Metodo Explicación: Se verifica si se pueden insertar elementos invocando la negación del método pila llena, si es posible se incrementa el tope y se inserta el elemento capturado en la pila.
  • 8. 3.4 Método para Eliminar un elemento de la Pila. Publico Pop () Inicio Si(!pilaVacia()) // Si la pila no esta vacia entonces .... Escriba("Se borro el Dato : " + Pila[Top]); // Eliminar dato Pila[Top] = 0; // remplaza el valor por un cero (Eliminado) Top= Top-1; // Top se reduce para decir que un elemento se borro Sino // De lo contrario imprime .."que la pila esta vacia" Escriba ("Pila Vacia... Imposible Eliminar"); Fin Si Fin Metodo Explicación: Se verifica si se pueden la pila esta vacía invocando la negación del método pila Vacía, si hay elementos se asigna cero o null según sea el caso para indicar la eliminación del elemento y se decrementa el tope liberando una posición dentro de la pila.