Skip to content
Snippets Groups Projects
Commit ef919a54 authored by Lubos Slovak's avatar Lubos Slovak
Browse files

Basic fixes in skip list. Now compiles, not tested

parent 1caa028a
No related branches found
No related tags found
No related merge requests found
......@@ -83,7 +83,7 @@ skip_list *skip_create_list( int (*compare_keys)(void *, void *) )
{
skip_list *ss = (skip_list *)malloc(sizeof(skip_list));
ss->header = make_node(MAX_LEVEL, 0);
ss->header = skip_make_node(MAX_LEVEL, 0);
ss->level = 0;
return ss;
}
......@@ -117,7 +117,7 @@ void *skip_find( skip_list *list, void *key )
}
x = x->forward[0];
if (x != NULL && x->value == search_value) {
if (x != NULL && list->compare_keys(x->key, key) == 0) {
return x->value;
}
return NULL;
......
......@@ -33,7 +33,7 @@ Retrieved from: http://en.literateprograms.org/Skip_list_(C)?oldid=12811
struct skip_node {
void *key;
void *value;
struct sn **forward; /* pointer to array of pointers */
struct skip_node **forward; /* pointer to array of pointers */
};
typedef struct skip_node skip_node;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment