我正在编写一个应该模拟城市的程序,我遇到的一个问题是如何存储大量相互关联的数据。例如,每个Street
都有一个direction
枚举(NORTH_ONE_WAY、EAST_WEST 等)和其他属性。最重要的属性是每条街道都有一个列表intersections
(与它相交的街道的地图以及它相交的街区号)。从这个数据结构中,我应该能够解析它并创建一个可视化(稍后会出现,不是这个问题的一部分)。
问题是:为此使用的最佳数据结构类型是什么?显然,关系数据库是一个不错的选择,但是如果我用 C++ 编写(不是这个问题的约束,但 C++ 实现会是一个加号),我应该使用它吗?还有哪些其他数据结构可以为此工作?