aboutsummaryrefslogtreecommitdiff
path: root/sparse.h
blob: 2ffbabdfefd613c3d696b3b0be29bfec4d759c82 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdbool.h>

struct b_tree {
	size_t index;
	unsigned long long value;
	struct b_tree *right;
	struct b_tree *left;
};

typedef struct b_tree node;

node* search(node **tree, size_t index);
void insert(node **tree, size_t index);
void deltree(node *tree);
unsigned long long lookup(node **tree, size_t index);

void print_sparse(node *tree, bool label, bool nonzero, unsigned int kmer);