mirror of
https://github.com/TheAlgorithms/C.git
synced 2026-09-24 16:05:02 +00:00
dynamic array data structure
This commit is contained in:
26
data_structures/dynamic_array/dynamic_array.h
Normal file
26
data_structures/dynamic_array/dynamic_array.h
Normal file
@@ -0,0 +1,26 @@
|
||||
#ifndef __DYNAMIC_ARRAY__
|
||||
#define __DYNAMIC_ARRAY__
|
||||
#define DEFAULT_CAPACITY 1 << 4
|
||||
#define INDEX_OUT_OF_BOUNDS NULL
|
||||
|
||||
typedef struct dynamic_array {
|
||||
void **items;
|
||||
unsigned size;
|
||||
unsigned capacity;
|
||||
} dynamic_array_t;
|
||||
|
||||
extern dynamic_array_t *init_dynamic_array();
|
||||
|
||||
extern void *add(dynamic_array_t *da, const void *value);
|
||||
|
||||
extern void *put(dynamic_array_t *da, const void *value, unsigned index);
|
||||
|
||||
extern void *get(dynamic_array_t *da, const unsigned index);
|
||||
|
||||
extern void delete (dynamic_array_t *da, const unsigned index);
|
||||
|
||||
unsigned contains(const unsigned size, const unsigned index);
|
||||
|
||||
extern void *retrive_copy_of_value(const void *value);
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user