F ILAS S ECUENCIALES Rodríguez Obregón, Reina Corina Reyes Pérez, Gustavo Nolazco Ayllon, Jean Calos
F ILAS S ECUENCIALES En un archivo organizado secuencialmente, lo registros quedan grabados consecutivamente cuando el archivo se utiliza como entrada. Un archivo puede ordenarse ascendente o descendentemente con base en su llave de ordenamiento.
P USH Push es simplemente el método por el cual va agregando un Dato nuevo a la Pila tomando en cuenta la Capacidad Máxima (Max) de almacenar un dato. Algoritmo: Push(Pila, Top, Max, Elemento) Si Top ≠ Max Top ←- Top + 1 Pila[Top] ←- Elemento Si no: Imprimir “Pila Llena” Salir
R ECORRIDO Ya que las pilas son LIFO(Last in - First Out) el Recorrido se hace sacando el ultimo dato que se inserto hasta que no encuentre ningún otro. Algoritmo: Recorrido(Pila, Top) Apuntador ←- Top Repetir mientras Apuntador ≠ Nulo Imprimir Pila[Apuntador] Apuntador ←- Apuntador - 1 Fin del ciclo Salir
P OP Pop es simplemente el método por el cual va sacando el ultimo Dato de la Pila, basándose únicamente en el Top. Algoritmo: Pop(Pila, Top) Si Top ≠ Nulo Imprimir Pila[Top] Top ←- Top - 1 Si no: Imprimir “Pila Vacía” Salir
B ÚSQUEDA Este método usa el recorrido para encontrar Elemento y desplegar un mensaje si la búsqueda es exitosa. Algoritmo: Busqueda(Pila, Top, Elemento) Si Top ≠ Nulo Apuntador ←- Top Repetir mientras Apuntador ≠ Nulo Si Pila[Apuntador] = Elemento Imprimir “El Dato fue encontrado” y Salir Apuntador ←- Apuntador - 1 Fin del ciclo Imprimir “El Dato no se encontró” Si no: Imprimir “Pila Vacía” Salir
E LIMINACION Algoritmo: Borrar(Pila, Temp, Top, Elemento) Si Top ≠ Nulo Apuntador1 ←- Top Repetir mientras Apuntador1 ≠ Nulo Si Pila[Apuntador1] = Elemento Imprimir “Eliminando el Dato” Repetir mientras Apuntador2 ≠ Nulo Pila[Apuntador1]=Temp[Apuntador2] Fin del ciclo Top ←- Top - 1 y Salir Si No: Temp[Apuntador2] ←- Pila[Apuntador1] Apuntador1 ←- Apuntador1 - 1 Apuntador2 ←- Apuntador2 + 1 Fin del ciclo Imprimir “Dato no encontrado” Si no: Imprimir “Pila Vacía” Salir