我需要实现一种适用于平面图的算法,我想选择一个合适的数据结构来表示它们。
这些顶点存储在一个数组中,每个顶点都有一对相关联的坐标,
边在其端点之间具有一条关联的折线,其中任意数量的中间点(可能没有中间点)按顺序存储在辅助数组中。
边缘是无方向的(如果a => b存在,则b => a存在)
必须支持以下原始操作:
在由其索引指定的两个顶点之间添加边,
枚举源自给定顶点的所有边(以及递归来自给定顶点的所有路径),
对于给定的边,遵循关联的多段线,直到结束顶点。
我正在寻找一种空间效率O(V + E)并避免数据冗余的数据结构。
您将使用什么?我看到的候选对象是邻接列表, DCEL ,翼状边缘,但我可能会缺少一个。我想四边形太过分了。