K-D树比较

时间:2017-08-08 16:03:15

标签: algorithm data-structures tree kdtree

大家好日子。

我正在做关于K-D树的报告。那里有一个部分,我的任务是将K-D树与其他数据结构(如列表,地图,数组等)进行比较。但是,我不知道如何将它与其他数据结构进行比较。我该怎么做并实施?

1 个答案:

答案 0 :(得分:1)

K-D树是二叉树,并且与上述其他数据结构不同。

列表是线性数据结构,可以表示一行人或一堆盘子或类似物品。列表可以使用数组或基于引用的链表甚至基于数组的链表

来实现

数组是存储数字,字符或对象的线性方式,可用于多个维度。即使您在某些情况下效率不高,也可以在很多其他数据结构中使用数组,例如列表,地图和树。

地图用于表示键值对,就像您可以将ID作为键,将名称作为值一样。

称为k-d树的

k维树对于在空间中排列点非常有用,有助于执行基于距离的搜索和最近邻搜索。在现实世界中,这可以帮助您识别附近的商店或餐馆,或查找特定汽车与您之间的距离。

k-d树在二叉树的每个节点上将空间分成两半,从而创建一个超平面,将这些点分为左子树和右子树。 kd树中的每个点在每个维度上都有一个坐标,这有助于识别位置并计算特定点到另一个点的距离。因此,它可以帮助定位相邻点点。