kd-tree

王朝百科·作者佚名  2010-06-12  
宽屏版  字体: |||超大  

KD-Tree是一种由二叉搜索树推广而来的用于多维检索的树的结构形式(K即为空间的维数)。它与二叉搜索树不同的是它的每个结点表示k维空间的一个点,并且每一层都根据该层的分辨器(discriminator)对相应对象做出分枝决策。顶层结点按由分辨器决定的一个维度进行划分,第二层则按照该层的分辨器决定的一个维进行划分···,以此类推在余下各维之间不断地划分。直至一个结点中的点数少于给定的最大点数时,结束划分。

KD-Tree的分辨器根据不同的用途会有不同的分辨器,最普通的分辨器为:n mod k(树的根节点所在层为第0层,根结点孩子所在层为第1层,以此类推)

即:若它的左子树非空,则其左子树上所有结点的第i维值均小于其根结点的第i维值;

若它的右子树非空,则其右子树上所有结点的第i维值均大于其根结点的第i维值;并且它的左右子树也分别为KD-Tree。

 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝百科 版权所有