|
Clustering
C++20 header-only: DBSCAN, HDBSCAN, k-means.
|
Radius-neighborhood adjacency with per-point core flags. More...
#include <clustering/index/range_query.h>
Public Attributes | |
| std::vector< std::vector< std::int32_t > > | rows |
| Per-point neighbour lists. | |
| std::vector< std::uint8_t > | isCore |
| Per-point core flag from the full degree. | |
| std::vector< std::pair< std::int32_t, std::int32_t > > | extraEdges |
Core-core edges carried outside rows. | |
Radius-neighborhood adjacency with per-point core flags.
rows[i] lists neighbours of point i within the query radius, always including i itself and every neighbour j with j > i. Rows of core points may omit neighbours with j < i: their degree already carries the core verdict, and the component build reads only the j > i half. Rows of non-core points are complete in both directions so border assignment can scan every adjacent core.
isCore[i] is nonzero iff point i has at least minPts neighbours within the radius, counting itself, measured on the full two-sided degree regardless of what rows stores.
Together, rows and extraEdges cover the core-core connectivity of the eps-graph: every pair of density-reachable cores is joined by a chain of edges present in one or the other.
Definition at line 30 of file range_query.h.
| std::vector<std::pair<std::int32_t, std::int32_t> > clustering::index::CoreAdjacency::extraEdges |
Core-core edges carried outside rows.
A backend that proves a whole leaf lies inside a core point's ball may link the point to one leaf representative here instead of materializing every member in the row; both endpoints are cores and the edge is a real eps-neighbour pair, so component building treats these exactly like row edges.
Definition at line 37 of file range_query.h.
| std::vector<std::uint8_t> clustering::index::CoreAdjacency::isCore |
Per-point core flag from the full degree.
Definition at line 32 of file range_query.h.
| std::vector<std::vector<std::int32_t> > clustering::index::CoreAdjacency::rows |
Per-point neighbour lists.
Definition at line 31 of file range_query.h.