/* * lista.h * * interfaz de una lista como TAD */ #ifndef __LISTA_H #define __LISTA_H #include "lista-vec.h" /* * Las operaciones siguientes se extrajeron del capítulo * Tipos de datos abstractos fundamentales, del libro * Estructuras de datos y algoritmos, de los autores * Aho, Hopcroft y Ullman, 1988, Addison Wesley Iberoamericana, S.A. */ /* * inserta x en la posicion p de la lista lis. * Los elementos que estan en la posición p y * siguientes se corren a la posición inmediata * posterior. Si p == lista_fin(lis) entonces la * lista tendrá a x como último elemento. Si lis * no tiene posición p, el resultado será indefinido. */ void lista_inserta(Lista * lis, Elem x, Pos p); /* * Devuelve la posición que sigue al último elemento * de ls lista lis. */ Pos lista_fin(Lista * lis); /* * Devuelve la posición de x en la lista lis. * Si x está más de una vez en lis, se devuelve * la posición de la primera ocurrencia. Si x no * figura en la lista, se devuelve lista_fin(lis). */ Pos lista_localiza(Lista * lis, Elem x); /* * Devuelve el elemento que está en la posición p * de la lista lis. * El resultado no está definido si p==lista_fin(lis) * o si lis no tiene posición p. */ Elem lista_recupera(Lista * lis, Pos p); /* * Elimina el elemento en la posición p de la lista lis. * Los elementos siguientes a p se corren para llenar * el hueco dejado por el elemento eliminado. El resultado * no está definido si lis no tiene posición p o si p==lista_fin(lis). */ void lista_suprime(Lista * lis, Pos p); /* * Devuelve la posición siguiente a la de p en la lista lis. * Si p es la última posición de lis, se devuelve lista_fin(lis). * Si p==lista_fin(lis) o si p no existe en lis, el resultado * no está definido. */ Pos lista_siguiente(Lista * lis, Pos p); /* * Devuelve la posición anterior a la de p en la lista lis. * Si p==1 o si p no existe en lis, el resultado no está definido. */ Pos lista_anterior(Lista * lis, Pos p); /* * Hace que lis se transforme en la lista vacía y * retorna lista_fin(lis) */ Pos lista_anula(Lista * lis); /* * Devuelve la primera posición en la lista lis. * Si lis está vacía, se devuelve lista_fin(lis) */ Pos lista_primero(Lista * lis); /* * Imprime los elementos de lis en el orden * de aparición dentro de la lista. */ void lista_imprime(Lista * lis); #endif /* EOF lista.h */
Text file Source (historic): geocities.com/ar/uap_c2a/ejemplos/lista
geocities.com/ar/uap_c2a/ejemplosgeocities.com/ar/uap_c2a
geocities.com/ar
(to report bad content: archivehelp @ gmail)
|
|
|
|
|