好几次面试都问了这个问题。问:假设在做一个格子游戏,我该如何存储格子上面有哪些物体/人。需要查询快反问: 一个物体是否仅属于一个格子?是 地图是否巨大?否 是否有不规则物体?否答:这种情况下一张简简单单的二维数组不就可以了吗?问:那类似于英雄光环的范围查询如何实现?答:直接以英雄为中心,遍历-r, r区间的格子就可以了,可能舍弃一些点因为他们在半径之外问:如何在格子里存储对物体的引用?反问:没懂啥意思答:不知道,一个指针不就行了吗?想和牛爷爷们讨论下这道题面试官到底想问什么?这种情况下个人觉得也没必要上四叉树。因为一个物体只fit一个格子,就算fit多个拿多个格子同时引用也解决了。也不是world partition那种动态加载的。说到底对于二维情况不太理解为什么要有空间数据结构如何存储对物体的引用更是不解。这是想问啥?