algorithm - K-D树比较

标签 algorithm data-structures tree kdtree

大家好。
我正在做一个关于K-D树的报告在这一部分中,我的任务是将K-D树与其他数据结构(如列表、映射、数组等)进行比较。但是,我不知道如何将其与其他数据结构进行比较我应该怎么做和实施?

最佳答案

K-D树是一种二叉树,不同于其它数据结构。
列表是线性数据结构,可以表示一个队列或一堆盘子或类似的东西列表可以用数组或基于引用的链表甚至基于数组的链表实现
数组是存储数字、字符或对象的线性方式,可用于多维空间。如果您想使用数组,即使在某些情况下效率不高,也可以在许多其他数据结构(如列表、映射和树)中使用数组
map用于表示键-值对,就像您可以将id作为键,将name作为值一样。
k维树(简称k-d树)在空间点的排列中有助于进行基于距离的搜索和最近邻搜索。在现实世界中,这有助于识别附近的商店或餐馆,或找到特定汽车与您的距离。
k-d树将空间在二叉树的每个节点处分成两半,创建一个超平面,将这些点划分为左子树和右子树k-d树中的每个点在每个维度上都有一个坐标,这有助于识别位置,也有助于计算特定点到另一个点的距离。因此,它可以帮助定位相邻点。

关于algorithm - K-D树比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45573068/

相关文章:

scala - 为什么向量这么浅?

algorithm - 如何高效构建连通图?

algorithm - 最小生成树Prims算法中的π[v] ←u步是什么意思?

data-structures - 在Prolog中创建队列结构

data-structures - 了解二叉搜索树的构造

algorithm - 插入2-3-4树时如何拆分节点?

java - 迭代遍历树以查找大小

algorithm - 循环检测算法 : Is there a condition for Tortoise and Hare to enter into cycle?

c# - 优惠券代码生成

algorithm - 使用二叉树对字母排序