Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- typedef struct node{
- int val;
- struct node *next;
- } node_t;
- typedef struct list{
- struct node *head;
- struct node *tail;
- }list_t;
- int init_list(list_t* L); // -1 se L == NULL, 0 se L != NULL
- int get_val(node_t* nodo); // exit(-20) se nodo NULL
- int empty(list_t* L); // -1 se L == NULL
- node_t* head(list_t* L); // NULL se lista vuota o Nulla
- node_t* tail(list_t* L); // NULL se lista vuota o Nulla
- node_t* next(node_t* nodo); // ritorna NULL solo se il nodo è NULL o il nodo è la coda
- node_t* prev(list_t* L, node_t* nodo); // exit(-1) se L == NULL
- // prev mi torna NULL se:
- // 1) nodo == head
- // 2) lista vuota
- // 3) il nodo non c'è
- node_t* insert(list_t* L, node_t* nodo, int val);
- // exit -1 se L == NULL
- // insert ritorna NULL se:
- // 1) allocazione nuovo nodo fallisce
- node_t* delete(list_t* L, node_t* nodo); // ritorna il prev
- // exit -1 se L == NULL
- // delete ritorna NULL se:
- // 1) la lista è vuota
- // 2) se nodo == NULL
- // 3) se il nodo non c'è
- // 4) se nodo == head
- void print_list(list_t* L); // stampa la lista
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement