You are on page 1of 11

REPUBLICA BOLIVARIANA DE VENEZUELA MINISTERIO DEL PODER POPULAR PARA LA EDUCACION INSTITUTO UNIVERSITARIO DE GERENCIA Y TECNOLOGIA CARACAS.

TRABAJO ESCRITO PILAS Y COLAS

Autor: Melendez Jonathan C.I: 23.947.194 Vicente Gonzales Prof. Estructura de Datos

Caracas, Febrero del 2012

INTRODUCCION

El presente trabajo tiene como finalidad describir conceptos bsicos de la asignatura Estructura de Datos relacionada con el rea de la programacin.

Se pretende resolver la duda de los lectores en torno al tema Pilas y Colas. Este contenido puede ser muy interesante y fundamental para el aprendizaje terico de la asignatura en cuestin.

El desarrollo de este trabajo esta sustentado en la investigacin documental, como aporte del recurso internet para la fase investigativa y de desarrollo. El informe esta estructurado en tres captulos, los cuales se describen brevemente. Capitulo I: Definicin de la Asignatura Estructura de Datos. Capitulo II: Contenido ampliado acerca de Pilas, funciones e historia. Capitulo III: Contenido ampliado acerca de Colas, su funcionalidad, y tipos.

CAPITULO I

ESTRUCTURA DE DATOS

En programacin, una estructura de datos es una forma de organizar un conjunto de datos elementales con el objetivo de facilitar su manipulacin. Un dato elemental es la mnima informacin que se tiene en un sistema. Una estructura de datos define la organizacin e interrelacin de estos y un conjunto de operaciones que se pueden realizar sobre ellos. Las operaciones bsicas son: Alta, adicionar un nuevo valor a la estructura. Baja, borrar la estructura. Bsqueda, encontrar un determinado valor en la estructura para realizar una operacin con este valor, en forma secuencial o binario (siempre y cuando los datos estn ordenados). Otras operaciones que se pueden realizar son: Ordenamiento, de los elementos pertenecientes a la estructura. Apareo, dadas dos estructuras originar una nueva ordenada y que contenga a las apareadas. Cada estructura ofrece ventajas y desventajas en relacin a la simplicidad y eficiencia para la realizacin de cada operacin. De esta forma, la eleccin de la estructura de datos apropiada para cada problema depende de factores como la frecuencia y el orden en que se realiza cada operacin sobre los datos. 2

CAPITULO II

PILAS, HISTORIA Y FUNCIONES

Una pila es una estructura de datos a la cual se puede acceder solo por un extremo de la misma. Las operaciones de insercin y extraccin se realizan a travs del tope, por lo cual no se puede acceder a cualquier elemento de la pila. Se la suele llamar estructura L.I.F.O. como acrnimo de las palabras inglesas "last in, first out" (ltimo en entrar, primero en salir). La pila se considera un grupo ordenado de elementos, teniendo en cuenta que el orden de los mismos depende del tiempo que lleven "dentro" de la estructura. Las pilas son frecuentemente utilizadas en el desarrollo de sistemas informticos y software en general. Por ejemplo, el sistema de soporte en tiempo de compilacin y ejecucin del Pascal utiliza una pila para llevar la cuenta de los parmetros de procedimientos y funciones, variables locales, globales y dinmicas. Este tipo de estructuras tambin son utilizadas para traducir expresiones aritmticas o cuando se quiere recordar una secuencia de acciones u objetos en el orden inverso del ocurrido. El mtodo de pila para la evaluacin de expresiones fue propuesto en 1955 y dos aos despus patentado por Fiedrich L.Bauer, quin recibi en 1988 el premio "IEEE Computer Society Pioneer Award" por su trabajo en el desarrollo de dicha estructura de datos.

A modo de resumen tipo de datos, la pila es un contenedor de nodos y tiene dos operaciones bsicas: push (o apilar) y pop (o desapilar). 'Push' aade un nodo a la parte superior de la pila, dejando por debajo el resto de los nodos. 'Pop' elimina y devuelve el actual nodo superior de la pila. Una pila cuenta con 2 operaciones imprescindibles: apilar y desapilar, a las que en las implementaciones modernas de las pilas se suelen aadir ms de uso habitual. Crear: se crea la pila vaca (size). Apilar: se aade un elemento a la pila.(push) Desapilar: se elimina el elemento frontal de la pila.(pop) Cima: devuelve el elemento que esta en la cima de la pila. (top o peek) Vaca: devuelve cierto si la pila est vaca o falso en caso contrario (empty).

CAPITULO III

COLAS

Una cola es una coleccin de elementos homogneos (almacenados en dicha estructura), en la misma se pueden insertar elementos por uno de los extremos, llamado frente, y retirar los mismos por el otro extremo, denominado final. Es importante aclarar que, tanto el frente como el final de la cola, son los nicos indicados para retirar e insertar elementos, respectivamente. Esto nos indica que no podemos acceder directamente a cualquier elemento de la cola, sino solo al primero, o sea el que est o se encuentra en el frente, y no se pueden insertar elementos en cualquier posicin sino solo por el final, as el elemento insertado queda como ltimo. Las colas se utilizan en sistemas informticos, transportes y operaciones de investigacin (entre otros), dnde los objetos, personas o eventos son tomados como datos que se almacenan y se guardan mediante colas para su posterior procesamiento. Este tipo de estructura de datos abstracta se implementa en lenguajes orientados a objetos mediante clases, en forma de listas enlazadas. La particularidad de una estructura de datos de cola es el hecho de que slo podemos acceder al primer y al ltimo elemento de la estructura. As mismo, los elementos slo se pueden eliminar por el principio y slo se pueden aadir por el final de la cola. 5

Ejemplos de colas en la vida real seran: personas comprando en un supermercado, esperando para entrar a ver un partido de bisbol, esperando en el cine para ver una pelcula, una pequea peluquera, etc. La idea esencial es que son todos lneas de espera. Entre sus operaciones bsicas tenemos: Crear: se crea la cola vaca. Encolar (aadir, entrar, insertar): se aade un elemento a la cola. Se aade al final de esta. Desencolar (sacar, salir, eliminar): se elimina el elemento frontal de la cola, es decir, el primer elemento que entr. Frente (consultar, front): se devuelve el elemento frontal de la cola, es decir, el primer elemento que entr. Tambin existen diversos tipos de colas, entre ellos estn: Colas circulares (anillos): en las que el ltimo elemento y el primero estn unidos. Colas de prioridad: En ellas, los elementos se atienden en el orden indicado por una prioridad asociada a cada uno. Si varios elementos tienen la misma prioridad, se atendern de modo convencional segn la posicin que ocupen. Hay 2 formas de implementacin: 1. Aadir un campo a cada nodo con su prioridad. Resulta conveniente mantener la cola ordenada por orden de prioridad. 2. Crear tantas colas como prioridades haya, y almacenar cada elemento en su cola.

Bicolas: son colas en donde los nodos se pueden aadir y quitar por ambos extremos; se les llama DEQUE (Double Ended QUEue). Para representar las bicolas lo podemos hacer con un array circular con Inicio y Fin que apunten a cada uno de los extremos. Hay variantes: Bicolas de entrada restringida: Son aquellas donde la insercin slo se hace por el final, aunque podemos eliminar al inicio al final. Bicolas de salida restringida: Son aquellas donde slo se elimina por el final, aunque se puede insertar al inicio y al final.

CONCLUSION

En este informe se discutieron las definiciones de los temas que se abordaron, es decir, pilas y sus tipos, funciones e historia. Colas, usos y funcionalidades. El objetivo principal de este trabajo era ver ms all de las estructuras de datos y saber cules son esos conceptos tcnicos ms comunes como de los temas discutidos (pilas y colas) de manera que el lector pudiera entender de forma clara y precisa. De acuerdo a lo expuesto se debe tener en cuenta el estudio de algoritmos y programas de desarrollo (Pascal, Visual Studio, Java Entro otros), para as entender de manera mas practica los temas expuestos. El autor espera que el lector quede satisfecho y solucionara sus dudas en torno a los temas discutidos de Estructura de Datos.

REFERENCIAS BIBILIOGRAFICAS

Fuentes Electrnicas:

Wikipedia Colas [Pagina Web en Lnea] Disponible en: http://es.wikipedia.org/wiki/Cola_(estructura_de_datos) [Consulta: 2012 Febrero]

Wikipedia -Pilas [Pagina Web en Lnea] Disponible en: http://es.wikipedia.org/wiki/Pila_(inform%C3%A1tica) [Consulta: 2012
Febrero]

Wikipedia Estructura de Datos [Pagina Web en Lnea] Disponible en: http://es.wikipedia.org/wiki/Estructura_de_datos [Consulta: 2012 Febrero]

INDICE

Contenido Introduccin Estructura de Datos.. Pilas, Historia y Funciones.. Colas, Tipos y Funciones. Conclusin Referencias Bibliogrficas...

Pagina 1 2 3 5 8 9

You might also like