SHOW:
|
|
- or go back to the newest paste.
1 | #ifndef LISTA_H_ | |
2 | #define LISTA_H_ | |
3 | ||
4 | typedef struct celda * TPosicion; | |
5 | typedef void * TElemento; | |
6 | ||
7 | typedef struct celda { | |
8 | TElemento elemento; | |
9 | struct celda * proxima_celda; | |
10 | } * TCelda; | |
11 | ||
12 | typedef struct lista { | |
13 | unsigned int cantidad_elementos; | |
14 | TCelda primer_celda; | |
15 | } * TLista; | |
16 | ||
17 | ||
18 | ||
19 | //Retorna una nueva lista vacia. | |
20 | TLista lista_crear(); | |
21 | ||
22 | //Agrega el elemento elem en la posición anterior a pos, dentro de la lista. | |
23 | int l_insertar(TLista lista, TPosicion pos, TElemento elem); | |
24 | ||
25 | //Elimina un elemento de la lista segun la posicion pasada como parametro | |
26 | //Si la posicion pasada nula, finaliza la ejecucion con error LST_POS_INV | |
27 | int l_eliminar(TLista lista, TPosicion pos); | |
28 | ||
29 | // Retorna la primer posición de la lista. | |
30 | TPosicion l_primera(TLista lista); | |
31 | ||
32 | // Retorna la última posición de la lista. | |
33 | TPosicion l_ultima(TLista lista); | |
34 | ||
35 | // Retorna la posición anterior a pos en la lista. | |
36 | TPosicion l_anterior(TLista lista, TPosicion pos); | |
37 | ||
38 | //Retorna la posición siguiente a pos en la lista. | |
39 | TPosicion l_siguiente(TLista lista, TPosicion pos); | |
40 | ||
41 | //Retorna el elemento correspondiente a la posición pos. | |
42 | TElemento l_recuperar(TLista lista, TPosicion pos); | |
43 | ||
44 | //Retorna la cantidad de elementos de la lista. | |
45 | //Si la lista no esta inicializada finaliza la ejecucion con error LST_NO_INI | |
46 | int lista_cantidad(TLista lista); | |
47 | ||
48 | void l_destruir(); | |
49 | ||
50 | ||
51 | #endif /* LISTA_H_ */ |