Implementation of Collection

typedef int collection_element;

typedef struct collection_node {
  collection_element value;
  struct collection_node * next;
} collection_node;

typedef struct {
  int size;
  collection_node *first,*last;
} collection_header;

typedef collection_header *collection;

collection_node * get_node_memory (void);
void return_node_memory (collection_node *);

collection_header * get_header_memory (void);
void return_header_memory (collection_header *);

Representation of C = {9,1,5}