Documentos de Académico
Documentos de Profesional
Documentos de Cultura
En este sentido es necesario definir conceptos que se mantienen de una relación previa con
estructuras de datos fundamentales.
Int valor;
Float promedio;
Char nombre[25];
1 Ejemplos de Variables con espacio definido previa ejecución.
N=((nodo*) malloc(sizeof(nodo)))
2 Llamado a creación de espacio de memoria en tiempo de ejecución
1.2.2. Estructura Jerárquica: Estructura en la que cada elemento puede ser precedido o
antecedido por uno o más elementos en un nivel superior o inferior. Su
representación visual no es lineal, es jerárquica.
Una estructura de datos Pila es aquella que contextualiza las operaciones y reglas que rigen a
una representación de “pila” en el quehacer cotidiano, caracterizándose por la forma de
ingresar y extraer elementos de una agrupación de estos, siguiendo las especificaciones de una
estructura LIFO.
LIFO (Del inglés: Last Input, First Output, ultimo en entrar, primero en salir), hace referencia a
las estructuras que cumplen con la metodología de ingreso y egreso de elementos, descrita en
las siglas que la definen.
Un ejemplo de “pila” en el mundo corpóreo es: una agrupación de libros apilados de forma
vertical, en la cual, para acceder a cualquiera de los elementos, solo se puede realizar a partir
del extremo superior. Es decir, en una pila de tres libros, para acceder al libro 2, se debe retirar
primero el libro 3 y posteriormente acceder o retirar el libro 2, destacando que, una vez
realizada esta operación, el libro 3 debería colocarse nuevamente en la cima de la pila.
Analizando los argumentos anteriores, nos describe a una estructura de datos que es capaz de
agrupar un conjunto de elementos, sin embargo, el acceso al contenido debe ser realizado
siguiendo la normativa de una estructura LIFO.
Una pila de elementos puede ser considerada de forma estática si la estructura base que es
utilizada para definir la pila sigue también esta característica, ejemplo “Arreglos; o puede ser
dinámica si la estructura base también lo es, ejemplo “creación de espacios en tiempo de
ejecución mediante punteros”.
pila p
7 Asignación del tipo de datos "pila" a la variable p.
Una característica de la estructura de datos LIFO es que para acceder a los elementos
únicamente se realiza mediante la gestión de una variable que se encarga de almacenar la
posición del elemento que se encuentra en la cima de la pila, denominada “Tope”.
En este sentido hay que tener presente que, en la gestión de este tipo de estructuras, hay que
diferenciar claramente los elementos Contenido y Posición. Contenido hace referencia al valor
almacenado en la pila, el cual puede ser de cualquier tipo según especificación previa y
Posición que representa la posición actual de los elementos en la pila, el que será gestionado
mediante la variable “Tope” mencionada anteriormente.
Contenido
Posición 1 2 3 4 5
8 Representación conceptual Pila de 5 elementos, “Vacía”, Tope=0
Contenido
Posición 0 1 2 3 4
9 Representación teórica en “Lenguaje C” Pila de 5 elementos, “Vacía”, utilizando arreglos, Tope=-1
2.2.2.Llena: Una pila está llena cuando la cantidad de elementos que forma parte de la
pila coincide con la cantidad definida en la estructura. En este sentido,
basándonos en la estructura de almacenamiento “Arreglo” para definir la
estructura de datos pila considerando su representación conceptual y teórica en
lenguaje C, la variable “Tope” utilizada para gestionar la pila, tendría asignado los
valores 5 y 4, respectivamente.
Contenido A B C D E
Posición 1 2 3 4 5
11 Representación conceptual Pila de 5 elementos, “Llena”, Tope=5
Contenido A B C D E
Posición 0 1 2 3 4
12 Representación conceptual “Lenguaje C” Pila de 5 elementos, “Llena”, utilizando arreglos, Tope=4
2.2.3.Poner: Es una operación que permite agregar elementos en una pila, siempre y
cuando exista espacio disponible “No esté llena”. Para tal fin cada vez que se
requiera insertar un elemento debe de verificar la disponibilidad de la pila,
haciendo un llamado a la operación “Llena” definida anteriormente.
2.2.4.Quitar: Es una operación que permite extraer elementos de una pila, siempre y
cuando exista algún elemento “No esté vacía”. Para tal fin cada vez que se
requiera extraer un elemento debe de verificar la disponibilidad de la pila,
haciendo un llamado a la operación “Vacía” definida anteriormente.