aboutsummaryrefslogtreecommitdiff
path: root/vector.h
blob: 078d56b326640d88b86c189f29289aa327406934 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#ifndef __VECTOR_H__
#define __VECTOR_H__

typedef struct {
    int *arr;
    int max_size;
    int cur_size;
} vector_t;

vector_t vector_init(int size);
int size(vector_t vec);
int capacity(vector_t vec);
int is_empty(vector_t vec);
int is_full(vector_t vec);
int at(vector_t vec, int index);
void push(vector_t *vec, int value);
void insert(vector_t *vec, int index, int val);
void delete_vec(vector_t *vec, int index);
void remove_val(vector_t *vec, int value);
void prepend(vector_t *vec, int value);
int pop(vector_t *vec);
void print_vec(vector_t vec);
void destroy_vec(vector_t *vec);

#endif