Está en la página 1de 12

Instituto Tecnolgico de Ciudad Jurez

Estructura de datos

Practica 1.1

Maestra: Mara Eugenia Snchez Leal


Alumno: Anthony Marbn Garces
Fecha de entrega: domingo, 3 de septiembre de 2017, 23:00
Marco terico

Uno de los conceptos que ms se emplean en las estructuras de datos lineales, en la


elaboracin de programas, son las pilas. stas son aplicadas en cuanto a las
restricciones sobre el acceso a los datos del arreglo, ya sea para insertar o eliminar
elementos, actualizando el contenido de los registros.

Iniciemos por definir el trmino fundamental de una pila como una lista de elementos en
la cual se puede insertar y eliminar elementos slo por uno de los dos extremos.

Para tener una comprensin ms clara de lo que es una pila, imagine el acomodo de
latas de un producto X en un centro comercial. O bien el apilamiento de libros en una
biblioteca.

Las pilas son estructuras utilizadas muy a menudo como herramientas de programacin
de tipo LIFO (Last in-First out), ya que permiten el acceso solo a un elemento a la vez: el
ltimo elemento insertado. La mayora de los procesadores utilizan una arquitectura
basada en pilas.

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
empleadas en el desarrollo de sistemas informticos y software en general. Por ejemplo,
el sistema de soporte en tiempo de compilacin y ejecucin de 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.
La implementacin de las pilas en una aplicacin para la resolucin de problemas, es
comn; esto se debe a que dentro de las estructuras de datos, el uso de las pilas permite
mejorar la forma de analizar y resolver problemas matemticos.

Para implementar el concepto de pilas, se usar como base a los arreglos, stos estarn
limitados a un nmero mximo de elementos, lo que no permitir agregar otros registros.

Existen cuatro operaciones bsicas que son vlidas para el tipo de datos pila, las cuales
son las siguientes:

- Agregar (Elementos, Pila).


- Eliminar (Pila).
- Lleno (Pila).
- Vacio (Pila).

Los algoritmos principales sern Agregar y Eliminar, debido a que Lleno y Vacio

slo devolvern valores boleanos, para saber si una pila est llena o vacia.
Metodologa
Para esta practica se seguir el mtodo de induccin-deduccin, el cual nos ayudara a
que travs de las pruebas de los programas elaborados, llegar a una conclusin acerca
del tema.

Clase Pila
Clase CustomException
Clase Programa1
Corrida de la clase Programa1
Clase Programa2
Corrida de la clase Programa2
Preguntas
Suponga que ahora quiere hacer una pila para guardar otro tipo de dato diferente.
1.- Qu cambios hara en la clase Pila?
R= Cambiaria el tipo de dato del arreglo dentro del objeto Pila claro
2.- Qu aspectos del cdigo quedaran iguales?
R= Todo lo que no est relacionado con el tipo de dato del arreglo
3.- Al utilizar la clase Pila en las clases Programa1 y Programa2, se tuvo que cambiar
la definicin de la clase Pila?
R= Hubiera sido mucho ms fcil si la hubiese modificado pero no lo tena permitido
4.- Conclusin acerca de la abstraccin de un TDA utilizando una clase.
R= Fue til para la flexibilidad de operaciones con una sola clase, la cual al mismo
tiempo ayuda a que la codificacin fuese ms limpia y resumida.
Conclusiones finales

La programacin que utiliza abstraccin de datos se basa en el hecho de que en un


programa se deben integrar y combinar los tipos bsicos de datos, como nmeros y
caracteres, para formar estructuras de datos ms complejas y as representar
informacin dentro del computador. En general existe una fuerte relacin entre todos los
datos manipulados por un programa, por lo que es conveniente que esa relacin est
claramente especificada y controlada, de forma que cada parte del programa "vea" slo
lo que necesita.

Esto ltimo es muy importante para separar el programa en partes independientes, o


mdulos, evitando as que cambios en una parte produzcan errores en otras partes del
programa. Por ejemplo, en un programa que usa varios arreglos y matrices para
almacenar informacin, es frecuente que al aumentar el tamao de una dimensin se
olvide aumentar la de los dems arreglos, por lo que el mantenimiento del programa es
ms difcil. El objetivo perseguido al usar abstraccin de datos es lograr aislar todas estas
dependencias, de forma que los cambios puedan ser hechos con un mnimo de esfuerzo
y en una forma localizada. En nada ayuda tener que buscar por todo el programa en qu
lugar debe hacerse cada cambio.

Tambin es importante especificar mediante la abstraccin de datos qu es cada


estructura de datos. Una lista, por ejemplo, es una estructura de datos que tiene un
comportamiento muy bien definido: pueden insertrsele nuevos elementos, recorrrsela,
encontrar el primer y ltimo elemento, etc. Un programador que use el tipo de datos Lista
no debe necesitar descubrir de nuevo ese concepto: simplemente debe poderlo importar
de una biblioteca.

También podría gustarte