Informatica
Enviado por welder • 11 de Julio de 2014 • 1.144 Palabras (5 Páginas) • 206 Visitas
INTRODUCCION
Con la presentación de este trabajo correspondiente al modulo de Informática III, se pretende poner en práctica lo aprehendido con respecto a las diferentes estructuras de datos que hemos desarrollado en clases, hemos visto como funcionan los arreglos, las matrices, pilas, cola, listas ligadas simples, listas doblemente enlazadas, grafos y por último la más compleja las estructuras de datos tipo árbol.
Para la realización del presente trabajo nos hemos abocado a la utilización de una de estas estructuras refiriéndonos a la Pilas, debido por la sencillez y la facilidad de su manejo teniendo en cuenta que es una estructura donde puedes agregar valores y retirarlos, donde el último dato que entra es el primero en salir o viceversa.
Para demostrarlo hemos creado una sencilla aplicación que nos permite crear una pequeña base de datos, en la que primeramente se pide el numero o tamaño de pilas a ser utilizadas, trabajándolo como un arreglo tipo vector, con los que iremos cargando los datos para lo que se creo, con la opciones de apilar, desapilar, como también la de ver si la pila esta o no vacía y finalmente ver los datos cargados en ella.
Para ello hemos utilizado el programa Netbeans, utilizando como código fuente el lenguaje Java, el cual permite crear una clase donde se nombraran todos los atributos necesarios para que nuestra aplicación funcione, siendo posible visualizarlo gracias a una interfaz grafica creado para el efecto.
PILAS
1. Definiciones Básicas.
Una pila (stack en inglés) es una lista ordenada 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. Esta estructura se aplica en multitud de ocasiones en el área de informática debido a su simplicidad y ordenación implícita de 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.
1.1. 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. (constructor)
• Tamaño: regresa el número de elementos de la pila. (size)
• Apilar: se añade un elemento a la pila.(push)
• Desapilar: se elimina el elemento frontal de la pila.(pop)
• Llena: 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 (empty)
2. SOPORTES.
2.1. Soporte en Software.
En programas de aplicación escrito en un lenguaje de alto nivel, una pila puede ser implementada de manera eficiente, ya sea usando vectores o listas enlazadas. En LISP no hay necesidad de aplicar la pila, puesto que las funciones apilar y desapilar están disponibles para cualquier lista. Adobe PostScript también está diseñada en torno a una pila que se encuentra directamente visible y manipuladas por el programador. El uso de las pilas está muy presente en el desarrollo de software por ello la importancia de las pilas como tipo abstracto de datos.
2.2. Soporte en Hardware.
Muchas CPUs tienen registros que se pueden utilizar como punteros de pila. Algunos, como el Intel x86, tienen instrucciones especiales que implícitamente el uso de un
registro dedicado a la tarea de ser un puntero de pila. Otros, como el DEC PDP-11 y de la familia 68000 de Motorola tienen que hacer frente a los modos de hacer posible la utilización de toda una serie de registros como un puntero de pila. La serie Intel 80x87 numérico de coprocessors tiene un conjunto de registros que se puede acceder ya sea como una pila o como una serie de registros numerados. Algunos microcontroladores, por ejemplo algunos PICs, tienen un fondo fijo de pila que no es directamente
...