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 struct skiplistnode_struct | skiplistnode |
typedef struct 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 Documentation
#define SKIPLIST_ERROR_ARGS 1 |
#define SKIPLIST_ERROR_DUPLICATE 3 |
#define SKIPLIST_ERROR_MEMORY 2 |
Typedef Documentation
Function Documentation
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 |
|
) |
| |
void* skiplist_find_first |
( |
skiplist * |
list, |
|
|
void * |
data, |
|
|
void ** |
node_ptr |
|
) |
| |
void* skiplist_find_next |
( |
skiplist * |
list, |
|
|
void * |
data, |
|
|
void ** |
node_ptr |
|
) |
| |
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 |
|
) |
| |
int skiplist_random_level |
( |
skiplist * |
list | ) |
|