在计算机科学里,k-d树( k-维
树的缩写)是在k维
欧几里德空间组织点的数据结构。k-d树可以使用在多种应用场合,如多维键值搜索(例:范围搜寻及
最邻近搜索)。k-d树是空间二分树(Binary space partitioning )的一种特殊情况。
在
计算机科学里,k-d树(k-维
树的缩写)是在k维
欧几里德空间组织点的数据结构。k-d树可以使用在多种应用场合,如多维键值搜索(例:范围搜寻及
最邻近搜索)。k-d树是空间二分树(Binary space partitioning)的一种特殊情况。
k-d树是每个节点都为k维点的
二叉树。所有非叶子节点可以视作用一个
超平面把空间分割成两个
半空间。节点左边的子树代表在超平面左边的点,节点右边的子树代表在超平面右边的点。选择超平面的方法如下:每个节点都与k维中垂直于超平面的那一维有关。因此,如果选择按照x轴划分,所有x值小于指定值的节点都会出现在左子树,所有x值大于指定值的节点都会出现在右子树。这样,超平面可以用该x值来确定,其
法线为x轴的
单位向量。