kdtree_t* kdtree_build(kdtree_t* kd, void *data, int N, int D, int Nleaf, int treetype, unsigned int options);
Build a tree from an array of data, of size N*D*sizeof(data_item).
N: number of vectors
D: dimensionality of vectors
For fancier options, see kd_tree_types.
see kd_build_options for additional fancy stuff.
NOTE that this function will permute the contents of the data array!
When you’re done with your tree, be sure to kdtree_free() it.
Example:
double mydata[] = { 1,1, 2,2, 3,3, 4,4, 5,5, 6,6, 7,7, 8,8 }; int D = 2; int N = sizeof(mydata) / (D * sizeof(double)); kdtree_t* kd = kdtree_build(NULL, mydata, N, D, 4, KDTT_DOUBLE, KD_BUILD_BBOX); kdtree_print(kd); kdtree_free(kd);
void kdtree_free(kdtree_t *kd);
Frees the given kd. By default, the kd->data is NOT freed. Set kd->free_data = 1 to free the data when kdtree_free() is called.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4