forked from vieter-v/libvieter
feat(heap): code skeleton
This commit is contained in:
parent
ad8c37c9ea
commit
050e99b413
4 changed files with 73 additions and 1 deletions
26
include/vieter_heap.h
Normal file
26
include/vieter_heap.h
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
#ifndef VIETER_HEAP
|
||||
#define VIETER_HEAP
|
||||
|
||||
#include <stdint.h>
|
||||
#include <stddef.h>
|
||||
|
||||
typedef struct vieter_heap vieter_heap;
|
||||
|
||||
typedef enum vieter_heap_error {
|
||||
vieter_heap_ok = 0,
|
||||
vieter_heap_empty = 1
|
||||
} vieter_heap_error;
|
||||
|
||||
vieter_heap *vieter_heap_init();
|
||||
|
||||
void vieter_heap_free(vieter_heap *heap);
|
||||
|
||||
uint64_t vieter_heap_size(vieter_heap *heap);
|
||||
|
||||
vieter_heap_error vieter_heap_insert(vieter_heap *heap, uint64_t key, void *data);
|
||||
|
||||
vieter_heap_error vieter_heap_pop(void **out, vieter_heap *heap);
|
||||
|
||||
vieter_heap_error vieter_heap_peek(void **out, vieter_heap *heap);
|
||||
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue