四叉树实施中逆向查找的成本/收益

时间:2015-06-24 18:03:51

标签: c++ algorithm data-structures tree quadtree

我最近写了一个点四叉树实现,其中基于(x,y)坐标插入点。每个点都有一个唯一的point_id。

它现在没有反向查找 - 如果你想找到一个点,你需要传递坐标。

维护类似下面的伪代码有什么好处吗?

Map(point_id, [pointers to subtrees in quadtree that contain the point])

实施这样的事情有哪些优点和缺点?

1 个答案:

答案 0 :(得分:0)

TL; DR不需要传递几个字节的坐标的基本好处是不值得的。

我做了一些概念性工作,并研究了实现所需的内容,而且与内存使用和执行时间的潜在缺点相比,反向查找似乎几乎没有任何好处。

出于这个原因,我选择维护一个基于坐标的实现,我发现它在大规模上具有高性能。