La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

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.

Presentaciones similares


Presentación del tema: "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:

1 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.

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

3 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).

4 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).

5 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

6 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

7 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

8 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.

9 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.

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

11 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

12 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

13 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

14 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

15 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


Descargar ppt "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."

Presentaciones similares


Anuncios Google