This Text file is old! In a 🏛️Museum, an unsorted archive of (user-)pages. (Saved from Geocities in Oct-2009. The archival story: oocities.org)
--------------------------------------- (To 🚫report any bad content: archivehelp @ gmail.com)
>

/*
 * 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/ejemplos
geocities.com/ar/uap_c2a
geocities.com/ar

(to report bad content: archivehelp @ gmail)