PostGIS 3.7.0dev-r@@SVN_REVISION@@
Loading...
Searching...
No Matches

◆ UF_create()

UNIONFIND * UF_create ( uint32_t  N)

Definition at line 35 of file lwunionfind.c.

36{
37 size_t i;
38 UNIONFIND* uf = lwalloc(sizeof(UNIONFIND));
39 uf->N = N;
40 uf->num_clusters = N;
41 uf->clusters = lwalloc(N * sizeof(uint32_t));
42 uf->cluster_sizes = lwalloc(N * sizeof(uint32_t));
43
44 for (i = 0; i < N; i++)
45 {
46 uf->clusters[i] = i;
47 uf->cluster_sizes[i] = 1;
48 }
49
50 return uf;
51}
void * lwalloc(size_t size)
Definition lwutil.c:227
uint32_t N
Definition lwunionfind.h:36
uint32_t * cluster_sizes
Definition lwunionfind.h:34
uint32_t * clusters
Definition lwunionfind.h:33
uint32_t num_clusters
Definition lwunionfind.h:35

References UNIONFIND::cluster_sizes, UNIONFIND::clusters, lwalloc(), UNIONFIND::N, and UNIONFIND::num_clusters.

Referenced by cluster_intersecting(), cluster_within_distance(), do_dbscan_test(), ST_ClusterDBSCAN(), ST_ClusterIntersectingWin(), ST_ClusterWithinWin(), test_unionfind_collapse_cluster_ids(), test_unionfind_create(), test_unionfind_path_compression(), and test_unionfind_union().

Here is the call graph for this function:
Here is the caller graph for this function: