k-d树

✍ dations ◷ 2025-08-18 03:51:40 #数据结构,树结构

在计算机科学里,-d树( k-维树的缩写)是在维欧几里德空间组织点的数据结构。-d树可以使用在多种应用场合,如多维键值搜索(例:范围搜寻及最邻近搜索)。-d树是空间二分树(Binary space partitioning)的一种特殊情况。

-d树是每个叶子节点都为k维点的二叉树。所有非叶子节点可以视作用一个超平面把空间分割成两个半空间。节点左边的子树代表在超平面左边的点,节点右边的子树代表在超平面右边的点。选择超平面的方法如下:每个节点都与k维中垂直于超平面的那一维有关。因此,如果选择按照x轴划分,所有x值小于指定值的节点都会出现在左子树,所有x值大于指定值的节点都会出现在右子树。这样,超平面可以用该x值来确定,其法线为x轴的单位向量。

有很多种方法可以选择轴垂直分割面( axis-aligned splitting planes ),所以有很多种创建-d树的方法。最典型的方法如下:

这个方法产生一个平衡的-d树。每个叶节点的高度都十分接近。然而,平衡的树不一定对每个应用都是最佳的。

function kdtree ( pointList,  depth){        var  axis := depth mod k;                select median by axis from pointList;                var  node;    node.location := median;    node.leftChild := kdtree(points in pointList before median, depth+1);    node.rightChild := kdtree(points in pointList after median, depth+1);    return node;}

插入元素

移除元素

平衡

在动态插入删除点且不允许预处理插入操作的情况下,一种平衡的方法是使用类似替罪羊树的方法重构整棵树。

最邻近搜索用来找出在树中与输入点最接近的点。

k-d树最邻近搜索的过程如下:


维数灾难让大部分的搜索算法在高纬情况下都显得花哨且不实用。 同样的,在高维空间中,k-d树也不能做很高效的最邻近搜索。一般的准则是:在k维情况下,数据点数目N应当远远大于 2 k {\displaystyle 2^{k}} 时,k-d树的最邻近搜索才可以很好的发挥其作用。不然的话,大部分的点都会被查询,最终算法效率也不会比全体查询一遍要好到哪里去。另外,如果只是需要一个足够快,且不必最优的结果,那么可以考虑使用近似邻近查询的方法。

相关

  • 抗逆转录病毒药物抗逆转录病毒药(management of HIV/AIDS)是一类于治疗逆转录病毒(例如HIV、冠状病毒等)感染的药物。联合使用几种(通常是三种或四种)抗逆转录病毒药物被称为高效抗逆转录病毒治
  • 生存生命泛指一类具有稳定的物质和能量代谢现象并且能回应刺激、能进行自我复制(繁殖)的半开放物质系统。简单来说,也就是具有生命机制的物体。生命个体一定会经历出生、成长、衰老
  • 西番莲属大约有500种,例如:西番莲属(学名:Passiflora)是西番莲科中拥有500个种的属。它们大部分是藤蔓,有一些种类是灌木,少数种类是草本植物,百香果Passiflora edulis是本属最有名的成员。
  • 葛墨林葛墨林(1938年12月5日-),生于北京,中国理论物理学家。1938年生于北京。1961年毕业于兰州大学物理系,师从段一士教授,1965年该校研究生毕业。2003年当选为中国科学院院士。南开大学
  • 观光LGBT观光(LGBT tourism)是指以LGBT人群为对象的小众观光产业。据2000年的一份报告,世界10%的国际游客是男女同性恋,人数达约7000万人。据Lonely Planet的报告,世界最受欢迎的同性
  • 国际铁路联盟国际铁路联盟(法语:Union Internationale des Chemins de Fer,UIC),1922年12月1日成立于法国巴黎,总部也设在巴黎,欧规的铁路系统标准主要由此联盟制定,称为国际铁路规则(Internation
  • 总务省总务省(日语:総務省/そうむしょう Sōmu Shō */?、英语:Ministry of Internal Affairs and Communications、缩写:MIC)是日本中央省厅之一。管辖 行政,公务员,地方自治,选举·政治
  • 怀特豪斯谢尔登·怀特豪斯(英语:Sheldon Whitehouse;1955年10月20日-),是一位美国民主党政治人物,自2007年成为罗德岛州联邦参议院议员。此前他曾在1999年至2003年期间担任罗德岛州总检察长
  • 女仆日记《女仆日记》(法语:Journal d'une femme de chambre)是一部2015年班诺·贾克 (Benoît Jacquot)执导的法语剧情片,由蕾雅·赛杜和文森·林顿主演。电影改编自奥克塔夫·米尔博的
  • 尤利亚·多姆娜尤利亚·多姆娜 (Julia Domna,170年-217年)是塞维鲁王朝(罗马帝国的王朝之一)的一位重要成员—罗马皇帝塞普蒂米乌斯·塞维鲁的皇后及妻子,盖塔及卡拉卡拉两位皇帝的母亲。她闻名于