我正在尝试对包含一个或多个形状的复合对象进行建模。为简单起见,我假设形状都是矩形。合成可能看起来像这样(原谅我糟糕的 ASCII 艺术):
+---+-------+---+ | | 2 | 5 | | +-------+---+ | 1 | 3 | | | +-------+ 6 | | | 4 | | +---+-------+---+
维基百科向我指出了图论,我在大学时几乎不记得了,而且邻接表似乎是对所有这些形状之间的关系进行建模的好方法。
我的问题是,我可以在邻接列表中指示左、右、上和下关系吗?说 1 与 2 相邻是不够的;我需要说 1 是 2 的左边(并且 3 在 4 之上,等等)。