举一示例:
假设有六个二维数据点 = {(2,3),(5,4),(9,6),(4,7),(8,1),(7,2)},数据点位于二维空间中。...一、Kd-树的构建
Kd-树是一个二叉树,每个节点表示的是一个空间范围。下表表示的是Kd-树中每个节点中主要包含的数据结构。
Range域表示的是节点包含的空间范围。...Left,Right域分别表示由左子空间和右子空间空的数据点构成的Kd-树。
?
从上面对k-d树节点的数据类型的描述可以看出构建k-d树是一个逐级展开的递归过程。...例一:查询的点(2.1,3.1)(较简单)。
1、如图3所示,星号表示要查询的点(2.1,3.1)。通过二叉搜索,顺着搜索路径很快就能找到最邻近的近似点,也就是叶子节点(2,3)。...)的距离为0.1414,
然后回溯到其父节点(5,4),并判断在该父节点的其他子节点空间中是否有距离查询点更近的数据点。