我目前正在为游戏编写一个插件,其中一个功能包括能够设置由 2 个二维坐标定义的区域(矩形的左上角和右下角区域)。然后将存储这些区域,并将具有与每个区域相关联的各种其他数据。当玩家在世界各地移动时,我需要仅从玩家的坐标确定他何时进入这些区域之一,并且这样做的方法必须高效,因为这最终会被每秒调用数百次.
是否有任何数据结构可以有效地支持这种搜索,如果有,我在哪里可以找到关于它的文档,或者找到要使用的 java 实现,或者如果有必要,我自己实现它?
我还想指出,我发现了一些似乎只支持批量加载的树结构,但我必须能够实时从这个结构中添加和删除值。