25 lines
520 B
C
25 lines
520 B
C
#include "treeset.h"
|
|
#include <stdlib.h>
|
|
#include <string.h>
|
|
|
|
struct treeset_node {
|
|
void *data;
|
|
struct treeset_node *left;
|
|
struct treeset_node *right;
|
|
};
|
|
|
|
struct treeset {
|
|
treeset_node_t *root;
|
|
size_t node_count;
|
|
};
|
|
|
|
void ts_node_destroy(treeset_node_t *n) {
|
|
if (n->left != NULL)
|
|
ts_node_destroy((treeset_node_t *)n->left);
|
|
if (n->right != NULL)
|
|
ts_node_destroy((treeset_node_t *)n->left);
|
|
|
|
free(n);
|
|
}
|
|
|
|
void treeset_destroy(treeset_t *set) { ts_node_destroy(set->root); }
|