X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=TP_11%2Fexo2%2Fclist.h;fp=TP_11%2Fexo2%2Fclist.h;h=2ca575290bae8527ca621277ff2d92cb354167c7;hb=a5a969535fd998039f26ddab023a0a7153006d81;hp=0000000000000000000000000000000000000000;hpb=3bb0a9f80ebc5b3d7c05c78cbf65241c6a6b0490;p=TD_C.git diff --git a/TP_11/exo2/clist.h b/TP_11/exo2/clist.h new file mode 100644 index 0000000..2ca5752 --- /dev/null +++ b/TP_11/exo2/clist.h @@ -0,0 +1,24 @@ +#ifndef CLIST_H +#define CLIST_H + +/** Linked list of int */ +typedef struct link_s { + int value; + struct link_s* next; +} link_t; + +link_t* list_new(int value); +link_t* list_append(link_t* head, int value); +link_t* list_prepend(link_t* head, int value); +link_t* list_insert(link_t* head, unsigned index, int value); +link_t* list_delete(link_t* head, unsigned index); +link_t* list_concat(link_t* first, link_t* second); +link_t* list_sort(link_t* head); +link_t* list_merge_sort(link_t* head); +unsigned list_count(link_t* head); +void list_set(link_t* head, unsigned index, int value); +int list_get(link_t* head, unsigned index); +void list_clear(link_t* head); +void list_display_values(link_t* head); + +#endif /* CLIST_H */