PILAS Una pila es una estructura de datos o lista de elementos, a la cual se le puede insertar o eliminar su contenido sólo por uno de sus extremos, llamado.

Slides:



Advertisements
Presentaciones similares
Arreglos Unidimensionales y Bidimensionales ESTRUCTURAS DE DATOS I
Advertisements

Definición Las colas ofrecen dos operaciones fundamentales, que son encolar (al final de la cola) y desencolar (del comienzo de la cola). Al igual que.
PILA.
ESTRUCTURA DE DATOS Unidad 03 PILAS.
ESTRUCTURA DE DATOS Unidad 03 COLAS.
Pilas y Colas Fundamentos Estructuras de Datos (Programación 2)
Tema 3: La estructura de datos Lista
Programación I Teoría III
Universidad Central II-35 Estructuras de Datos
Realizado por: Ing. Mauricio Rivera1 Colas. Realizado por: Ing. Mauricio Rivera2 ¿Qué es una Cola? Una cola es un grupo ordenado de elementos homogéneos.
PROGRAMACION DE Pilas o Stacks y Colas
ESTRUCTURA DE DATOS I ROBERTO MAL VILLALOBOS
Estructuras de Datos Especificación formal de Listas.
Estructuras de datos M.I.A Daniel Alejandro García López.
Estructuras de datos M.I.A Daniel Alejandro García López.
Programación II Colas Igor Santos Grueiro.
Colas y Listas Enlazadas
Tema Nº4.
COLAS, IMPLEMENTACIÓN A PARTIR DE LISTAS Y PARA PILAS
Pilas Una pila es una estructura lineal de elementos en donde se pueden agregar o eliminar datos únicamente por uno de los dos extremos. En consecuencia.
Igor Santos Grueiro. De este tipo de pilas NO vamos a hablar.
TÉCNICO EN PROGRAMACIÓN DE SOFTWARE Instructor: Ingeniero Adrián Guerrero Taborda
Árboles, montículos y grafos Cola de prioridades, montículos
POR: Meza Guevara Sandra Fabiola Contreras Meléndez Damariz Figueroa Cisneros Ricardo UNIVERSIDAD TECNOLÓGICA DE DURANGO TECNOLÓGIAS DE LA INFORMACIÓN.
ESTRUCTURAS DE DATOS I Conocer, comprender y analizar algunos de los principales tipos de estructuras de datos.
ARREGLOS BIDIMENSIONALES
Universidad Domingo Savio Facultad de Ciencias y Tecnología de la Información Carrera Ingeniería en Redes y Telecomunicaciones Materia : Programación I.
Clase 10: Estructuras de datos y arreglos.
Pila1UVM Pilas. Pila2UVM Pila3UVM 2.1 Objetivos El estudiante manejará el tad Pila contigua.
AED3: Algoritmos y Estructuras de Datos 3.  Uno de los conceptos mas utiles en computacion es la pila o stack  Es un conjunto de elementos, en la que:
Aplicación de estructuras de datos
Pilas y Colas Estructuras de Datos.
Computación I Primer Semestre 2006 Capítulo IV Ciclos y Colecciones (con un sabor a algoritmos)
República Bolivariana de Venezuela. Ministerio del PP para la Defensa. Universidad Nacional Experimental de la Fuerza Armada. Cátedra: Instrucción Militar.
PILAS Una pila es una estructura de datos o lista de elementos, a la cual se le puede insertar o eliminar su contenido sólo por uno de sus extremos, llamado.
Programación Orientada a Objetos
Punteros Recomendado: 1. Nivelación Funciones
Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero.
 Ignacio Soto Valdez R  Paola Karina Suarez Salazar R  Mario Alberto Castillo Aviles R
Estructuras de datos Fundamentos de análisis y diseño de algoritmos.
UNIDAD IV. PILAS, COLAS, RECURSION APLICADAS A LENGUAJE C.
Estructura de datos Francisco Castro
Ayudantia 3: Pilas- Colas
Arreglos unidimensionales
Lic. En C.C. Ann Margareth Meza Rodríguez
IMPLEMENTACION DE COLAS MEDIANTE LISTAS
Lic. En C.C. Ann Margareth Meza Rodríguez
Estructura de Datos..
Pilas y Colas Cursos Propedéuticos 2006 Programación y Estructuras de Datos Manuel Montes Claudia Feregrino
Estructura: COLA Profesor: Ing. Erick López Ch. M.R.I.
PROGRAMACION DE Pilas o Stacks
Estructura de Datos PILAS. 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.
ARREGLOS BIDIMENSIONALES MATRICES Son un espacio de almacenamiento continuo, que contiene una serie de elementos del mismo tipo de datos. Desde el punto.
M.C. Meliza Contreras González
Lenguaje de Programación LISP
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Tipo.
ESTRUCTURAS LINEALES “LA PILA”
OPERACIONES CON PILAS DECLARACIÓN O INICIALIZACIÓN DE LA PILA. Stack NombrePila=newStack (max);
Pilas Grupo 4. 1 Stack o Pila Definición: Una pila es una estructura de datos, a la cual se le puede ingresar o sacar elementos por un sólo lado. También.
PROGRAMACION DE Pilas o Stacks y Colas
PUNTEROS. Los punteros son de amplia utilización en programación y muchos lenguajes permiten la manipulación directa o indirecta de los mismos. Su razón.
ARRAYS Y COLECCIONES DE DATOS. ARRAYS Arrays – Matriz – Vector Elemento del lenguaje que nos permite agrupar un conjunto de valores del mismo tipo, y.
Ficha de datos Créditos Institucionales: 8 créditos.
Estructura de Datos PILA Universidad Hispanoamericana Prof. Ing. Erick López.
Listas Dinámicas.
Dado que una colección esta gestionada por una clase dentro del lenguaje que estamos utilizando, y en cierta forma no se tiene un control total.
1 ListaUna Lista se define como una serie de N elementos E 1, E 2,..., E N, ordenados de manera consecutiva, es decir, el elemento E k (que se denomina.
UNIVERSIDAD DIEGO PORTALES Facultad de Ingeniería Programación Avanzada TIPOS ABSTRACTOS DE DATOS TAD Tema: TIPOS ABSTRACTOS DE DATOS TAD Subtema: COLAS.
Lenguaje de Programación II Prof. Rafael Montenegro B. Carrera: T.S.U en Informática Periodo: 2014-I.
PILAS Una pila es una estructura de datos o lista de elementos, a la cual se le puede insertar o eliminar su contenido sólo por uno de sus extremos, llamado.
Transcripción de la presentación:

PILAS Una pila es una estructura de datos o lista de elementos, a la cual se le puede insertar o eliminar su contenido sólo por uno de sus extremos, llamado TOPE. Se dice que la pila maneja una estructura Lifo (Last input, First Output). Ultimo en entrar, primero en salir. Así el último elemento que entra a la pila es el primero que se saca. Además del tope la pila tiene un MAXIMO, que representa el tamaño de la pila y es estático e inviolable. Las pilas no tienen una estructura definida, a razón de esto se tiene un vector como pila o una lista ligada como pila. Mas que todo la pila es una filosofía aplicada a una estructura de datos.

PILAS Ejemplos de pila: Pila - pila: arreglo objeto - Tope: entero - Max: entero + Apilar() + Desapilar() + lógico Pilallena() + lógico Pilavacia()

PILAS En la clase Pila se tienen los atributos: Pila : Nombre del vector que sirve para representar la estructura. Tope: Posición en el vector que indica donde esta el último elemento de la pila. Máximo: Tamaño del vector o máximo número de elementos de la pila. Los Estados de una pila son: Pila llena Pila con algunos elementos Pila vacía Las operaciones que se realizan con las pilas son: Apilar, insertar, push (poner un elemento en la pila ). Desapilar, quitar, eliminar, pop (sacar un elemento de la pila).

PILAS Los estados de la pila representados con el tope se ven en la figura, partiendo de que TOPE, es la posición donde se encuentra el último elemento de la pila, en el primer vector el TOPE es: 3, la pila se encuentra en el máximo que significa que esta llena (en este caso se encuentra en max-1, por el indexado en 0); en el segundo es : 1; en el tercero es : -1 porque la pila esta vacía (condiciones iniciales).

PILAS Clase Pila privado pila [] es Objeto // Estructura de la pila privado tope, max es entero // variables para la pila //Constructor vacío Método Pila() fin del método Pila constructor // Constructor que recibe como parámetro el máximo de la pila Método Pila (entero N) max = N // Se determina la capacidad máxima de la pila pila = nuevo objeto [N] // Asignamos los espacios en la Pila tipo objeto tope = -1 // Tope se declara como -1 como referencia a que no existen datos en la pila

PILAS Método lógico Pilavacia() Si (tope= -1) Imprimir ".... Pila vacía ....<< SUBDESBORDAMIENTO >>“ //opcional retorne Verdadero sino retorne falso Fin Si Fin Método pilaVacia Publico lógico Pilallena() Si (tope=Max-1) Imprimir ".... Pila llena ...<< DESBORDAMIENTO >>“ //opcional Fin Método pilaLLena

PILAS Método Apilar(dato es objeto) Método objeto Desapilar() si (Pilallena()=falso) dato=0 es objeto tope=tope+1 si(Pilavacia()=falso) pila[tope]=dato dato=pila[tope] Fin Si tope=tope-1 Fin Método apilar fin si retornar dato Fin método desapilar Fin clase Pila https://www.youtube.com/watch?v=-Shr2s0gYao https://www.youtube.com/watch?v=raf5eF9WI6s https://www.youtube.com/watch?v=BdgdjTFpC6g https://www.youtube.com/watch?v=FsrlttGglGc https://www.youtube.com/watch?v=vvWjZSMkBZA https://www.youtube.com/watch?v=JVETmMnCIok https://www.youtube.com/watch?v=iORO09R9csI

COLAS Una cola es una estructura de datos o lista de elementos, también llamada fila, caracterizada por ser una secuencia de elementos en la que la operación de inserción encolar(push) se realiza por un extremo y la operación de extracción desencolar(pop) por el otro. Se dice que la cola maneja una estructura Fifo (First input, First Output). debido a que el primer elemento en entrar será también el primero en salir. La particularidad de una cola es el hecho de que sólo podemos acceder al primer y al último elemento de la estructura. Así mismo, los elementos sólo se pueden eliminar por el principio y sólo se pueden añadir por el final de la cola. La cola tiene un MAXIMO, que representa el tamaño de la cola y es estático e inviolable. Las colas no tienen una estructura definida, a razón de esto se tiene un vector como cola o una lista ligada como cola. Mas que todo la cola es una filosofía aplicada a una estructura de datos.

COLAS Ejemplos de colas en la vida real serían: personas comprando en un supermercado, esperando para entrar a ver un partido de fútbol, esperando en el cine para ver una película, una pequeña peluquería, etc. La idea esencial es que son todos líneas de espera. En estos casos, el primer elemento de la lista realiza su función (pagar comida, pagar entrada para el partido o para el cine) y deja la cola. Este movimiento está representado en la cola por la función pop o desencolar. Cada vez que otro elemento se añade a la lista de espera, se añaden al final de la cola representando la función push o encolar. Una cola puede almacenar cualquier tipo de información, números, personas, documentos, cualquier cosa. Esta estructura de datos tiene muchas aplicaciones en la informática al igual que la cola, por ejemplo cuando se mandan a imprimir varios documentos a una impresora, existe una cola de impresión que sigue la filosofía, se imprimen los primeros documentos y si se desea imprimir un nuevo documento se adiciona al final de todos los documentos que están esperando a imprimirse.

COLAS Ejemplos de cola: Cola - Cola: arreglo objeto - Frente: entero - Final: entero - Max: entero + Encolar() + Desencolar() + lógico Colavacia() + lógico Colallena()

COLAS Operaciones Básicas Encolar (añadir, entrar, push): Se añade un elemento a la cola al final de esta. Adiciona un nuevo elemento a la cola, para esto solo se incrementa la variable final y se coloca el elemento en esa posición. Desencolar (sacar, salir, pop): Se elimina el elemento frontal de la cola, es decir, el primer elemento que entró. Extrae el primer elemento de la cola, para esto se retorna la posición frente +1 del vector o sea, se incrementa frente. ColaVacia(): Método que retorna verdadero si la cola esta vacía es decir no tiene ningún elemento, para esto solo se pregunta si inicio o frente es igual a final. ColaLlena(): Método que retorna verdadero si la cola esta llena, pasa cuando se ha llenado todo el vector, la cantidad de elementos que permite la cola lo determina la variable MAXIMO

COLAS En la clase Cola se tienen los atributos: Cola : Nombre del vector que sirve para representar la estructura. Frente: Posición en el vector que indica donde esta el primer elemento de la cola. Final: Posición en el vector que indica donde esta el último elemento de la cola. Máximo: Tamaño del vector o máximo número de elementos de la cola. Los Estados de una cola son: Cola llena Cola con algunos elementos Cola vacía

COLAS Clase Cola //atributos propios y privados privado cola [] es Objeto // Estructura de la cola privado Final, Frente, Max es entero // variables para la cola //Constructor vacío Método Cola() fin del método Cola constructor // Constructor que recibe como parámetro el máximo de la cola Método Cola (entero N) Max = N // Se determina la capacidad máxima de la Cola cola = nuevo objeto [Max] // Asignamos los espacios en la cola tipo objeto Final=Frente= -1 // final y frente se inicializa en -1 como referencia a que no existen datos en la cola

COLAS Método lógico Colavacia() Si (Final= -1 ^ Frente=-1) Imprimir ".... Cola vacía ....<< SUBDESBORDAMIENTO >>“ //opcional retorne Verdadero sino retorne falso Fin Si Fin Método colavacia Método lógico Colallena() Si (Final=Max-1) Imprimir ".... Cola llena ...<< DESBORDAMIENTO >>“//opcional Fin Método colallena

COLAS Método Encolar(dato es objeto) Método objeto Desencolar() si (Colallena()=falso) dato=0 es objeto Final=Final+1 si(Colavacia()=falso) cola[Final]=dato dato=cola[frente] si (Final=0) si (Frente=Final) Frente=0 Frente=-1 fin si Final=-1 Fin Si sino Fin Método encolar Frente=Frente+1 retornar dato Fin método desencolar Fin clase Cola