c# - 最快的二维数据空间索引,一旦构建就无需更新

标签 c# algorithm indexing geospatial spatial

  • 我有大量 2D 对象集合,目前只有线条。
  • 我需要算法建议如何创建最快的空间索引 这个集合,以便我可以收集某些内部的所有对象 界限。
  • 索引一旦建立就不会更新。
  • 此数据库中的对象分布在空间上并不均匀。
  • 用 C# 实现算法。
  • 更新:当前使用的是某些国家的道路图,因此从一个十字路口到另一个十字路口的线条很小,人口稠密的地区密度更大。我认为这很好地描述了数据。

显然有很多索引方法可以实现这一目标,但我需要一种最快的方法。

最佳答案

您可以使用Segment Tree 如果您想保存二维线并且您的查询是二维范围查询。

查询的算法复杂度为 O( log^2 N )。

关于c# - 最快的二维数据空间索引,一旦构建就无需更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8152122/

相关文章:

c# - 将 TransformedBitmap 对象保存到磁盘。

c - C中的拉格朗日插值算法在许多步骤后发散

c++ - 算法到计算模式

mysql - 为什么我的带有多重连接的 MySQL 查询如此慢?

c# WebBrowser Flash 全屏 - ESC 不会退出全屏

c# - 不能在 NSSet<TKey> 中使用类

c# - 在负载平衡环境中将 javascript/css 请求定向到与页面相同的服务器

c# - 温控功能/算法

indexing - 如果总是需要键,我如何制作稀疏索引?

mysql - 为多个复合索引设计表架构和/或索引的最佳实践