Go to the source code of this file.
Data Structures | |
| struct | skiplistnode_struct |
| struct | skiplist_struct |
Defines | |
| #define | SKIPLIST_OK 0 |
| #define | SKIPLIST_ERROR_ARGS 1 |
| #define | SKIPLIST_ERROR_MEMORY 2 |
| #define | SKIPLIST_ERROR_DUPLICATE 3 |
Typedefs | |
| typedef skiplistnode_struct | skiplistnode |
| typedef skiplist_struct | skiplist |
Functions | |
| skiplist * | skiplist_new (int max_levels, float level_probability, int allow_duplicates, int append_duplicates, int(*compare_function)(void *, void *)) |
| skiplistnode * | skiplist_new_node (skiplist *list, int node_levels) |
| int | skiplist_insert (skiplist *list, void *data) |
| int | skiplist_random_level (skiplist *list) |
| int | skiplist_empty (skiplist *list) |
| int | skiplist_free (skiplist **list) |
| void * | skiplist_peek (skiplist *) |
| void * | skiplist_pop (skiplist *) |
| void * | skiplist_get_first (skiplist *list, void **node_ptr) |
| void * | skiplist_get_next (void **node_ptr) |
| void * | skiplist_find_first (skiplist *list, void *data, void **node_ptr) |
| void * | skiplist_find_next (skiplist *list, void *data, void **node_ptr) |
| int | skiplist_delete (skiplist *list, void *data) |
| int | skiplist_delete_first (skiplist *list, void *data) |
| int | skiplist_delete_all (skiplist *list, void *data) |
| int | skiplist_delete_node (skiplist *list, void *node_ptr) |
| #define SKIPLIST_ERROR_ARGS 1 |
| #define SKIPLIST_ERROR_DUPLICATE 3 |
| #define SKIPLIST_ERROR_MEMORY 2 |
| #define SKIPLIST_OK 0 |
| typedef struct skiplist_struct skiplist |
| typedef struct skiplistnode_struct skiplistnode |
| int skiplist_delete | ( | skiplist * | list, | |
| void * | data | |||
| ) |
| int skiplist_delete_all | ( | skiplist * | list, | |
| void * | data | |||
| ) |
| int skiplist_delete_first | ( | skiplist * | list, | |
| void * | data | |||
| ) |
| int skiplist_delete_node | ( | skiplist * | list, | |
| void * | node_ptr | |||
| ) |
| int skiplist_empty | ( | skiplist * | list | ) |
| void* skiplist_find_first | ( | skiplist * | list, | |
| void * | data, | |||
| void ** | node_ptr | |||
| ) |
| void* skiplist_find_next | ( | skiplist * | list, | |
| void * | data, | |||
| void ** | node_ptr | |||
| ) |
| int skiplist_free | ( | skiplist ** | list | ) |
| void* skiplist_get_first | ( | skiplist * | list, | |
| void ** | node_ptr | |||
| ) |
| void* skiplist_get_next | ( | void ** | node_ptr | ) |
| int skiplist_insert | ( | skiplist * | list, | |
| void * | data | |||
| ) |
| skiplist* skiplist_new | ( | int | max_levels, | |
| float | level_probability, | |||
| int | allow_duplicates, | |||
| int | append_duplicates, | |||
| int(*)(void *, void *) | compare_function | |||
| ) |
| skiplistnode* skiplist_new_node | ( | skiplist * | list, | |
| int | node_levels | |||
| ) |
| void* skiplist_peek | ( | skiplist * | ) |
| void* skiplist_pop | ( | skiplist * | ) |
| int skiplist_random_level | ( | skiplist * | list | ) |
1.4.7